我目前正在遵循書中的練習:「Haskell學院的表達」,並已經達成了關於創建圖形的第三章。本書使用SOEGraphics模塊,演示在窗口中繪製一些簡單的文本,然後按下按鈕關閉它。但是,在編譯和執行後,我發現儘管窗口出現在屏幕上,但無論我按哪個鍵或焦點是在命令行還是窗口本身,窗口都會拒絕關閉。Haskell SOEGraphics窗口將不會關閉
這裏是一本書的源代碼:
module Main where
import SOE
main = runGraphics(
do w <- openWindow
"My First Graphics Program" (300, 300)
drawInWindow w (text(100,200) "HelloGraphicsWorld")
k <- getKey w
closeWindow w
)
得到窗口關閉的唯一方法是通過迫使與CTRL-C退出。有沒有我用我的代碼忽略的東西?該程序使用GHC 7.4.1進行編譯,並在Ubuntu上運行。
你從哪裏得到模塊?據我所知,HGL包裝上的hackage不會以GHC> = 7構建。 –
也許我對我指的是哪些庫感到困惑?我按照說明讓SOEGraphics工作[這裏](http://www.cs.yale.edu/homes/hudak/SOE/software1.htm) –
好的,這是一個相當新的來源,所以它應該工作。我不知道SOE代碼已經被移出了HGL,並且你與擁抱文檔的鏈接(最後一次發佈是2006年9月!)讓我感到驚訝。不過,我不知道會發生什麼事情。它可以緩衝,所以只有按下''後才能發送按鍵? (不太可能,但我可以提供的唯一猜測。) –