我刚刚开始使用gtk2hs(hakage上的gtk3)并且遇到了一些comboBoxes的问题。 我无法使一个简单的comboBoxNewText显示其字符串。我已经注释掉了我的应用程序中不需要的所有东西,所以我只有一个实际框的基本框架。
import Graphics.UI.Gtk
import Control.Monad.IO.Class
main = do
initGUI
window <- windowNew
set window [windowTitle := "Table", containerBorderWidth := 20,
windowDefaultWidth := 800, windowDefaultHeight := 600]
table <- tableNew 10 10 True
containerAdd window table
lbox <- hBoxNew False 0
rbox <- hBoxNew False 0
tableAttachDefaults table lbox 0 3 0 10
tableAttachDefaults table rbox 3 10 0 10
cb <- comboBoxNewText
comboBoxAppendText cb "test"
boxPackStart lbox cb PackGrow 10
on window deleteEvent $ liftIO mainQuit >> return False
widgetShowAll window
mainGUI
我错过了什么吗? gtk3在hackage上被标记为不稳定的iirc,这可能是个bug吗?或者我只是做错了什么?
添加comboBoxSetActive cb 0
也无济于事。为了澄清,当我运行程序时会出现实际的组合框,但它不包含任何字符串/是空白的。
evernote image
答案 0 :(得分:0)
正如Daniel Wagner评论的那样,这似乎是关于hackage的gtk3包中的一个错误。它是通过附加到问题链接https://github.com/gtk2hs/gtk2hs/issues/10
的提交来修复的