Thank you for your response, however if I can't do that, why can the example of wxHaskell do that?
I refer to the following code inside http://darcs.haskell.org/wxhaskell/samples/wx/ (ImageViewer.hs) Line 99 untill 110 openImage sw vbitmap mclose status fname = do -- load the new bitmap bm <- bitmapCreateFromFile fname -- can fail with exception closeImage vbitmap set vbitmap [value := Just bm] set mclose [enabled := True] set status [text := fname] -- reset the scrollbars bmsize <- get bm size set sw [virtualSize := bmsize] repaint sw `catch` \err -> repaint sw if I'm correct the openImage is also defined in the where clause. Therefor by what I think it should not be possible, but it is. Thanks for everything. 2009/4/17 Lennart Augustsson <lenn...@augustsson.net> > Variables bound in the do block are not in scope in the where. > Use a let inside the do for onOpen instead. > > On Thu, Apr 16, 2009 at 11:53 PM, Tsunkiet Man <temp.t...@gmail.com> > wrote: > > Hello, > > > > I'm trying to create a GUI by using wxHaskell. However I get the weird > error > > message of "Not in scope "dt"", well so I sorted them so that my so > called > > "dt" was in scope, however it failed. Can someone please tell me how I > can > > solve this error? > > > > ... A lot of code that is not relevant in my opinion, if I'm > > wrong please correct me and I will post my full code > > > > --Debug text -- > > dt <- staticText f [text := "Hello world!"] > > > > imagePanel <- panel f [position := Point 2 2, clientSize := > Size > > 100 100, tooltip := "This is a drawPanel", bgcolor := rgb 255 255 255] > > set f [ clientSize := Size 700 500, > > menuBar := [mFile, mHelp], > > visible := True, > > on (menu exit) := close f, > > on (menu open) := onOpen f vFile ] > > > > > > return () > > > > where > > onOpen :: Frame a -> Var b -> IO () > > onOpen frame var = do file <- fileOpenDialog frame > False > > True "Open File" [("PGM bestanden (*.pgm)",["*.pgm"]),("Alle bestanden > > (*.*)",["*.*"])] "" "" > > case file of > > Nothing -> return () > > Just file -> set dt [text > := > > "HELLO"] > > return () > > > > Thank you for your help, I really owe haskell-cafe. > > > > Greetings Tsunkiet Man > > _______________________________________________ > > Haskell-Cafe mailing list > > Haskell-Cafe@haskell.org > > http://www.haskell.org/mailman/listinfo/haskell-cafe > > > > >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe