4

我刚开始使用 gtk2hs(hackage 上的 gtk3)并且遇到了一些关于组合框的问题。我不能让一个简单的 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,这可能是一个错误吗?还是我只是做错了什么?添加comboBoxSetActive cb 0也无济于事。为了澄清,当我运行程序时会出现实际的组合框,但它不包含任何字符串/为空白。 印象笔记图片

4

1 回答 1

0

正如 Daniel Wagner 评论的那样,这似乎是 gtk3 软件包中关于 hackage 的一个错误。它已通过附加到链接https://github.com/gtk2hs/gtk2hs/issues/10的问题的提交得到修复

于 2014-02-06T05:36:22.353 回答