我正在用 gtk2hs 制作一个 GUI 应用程序。大多数 GUI 都是在 Glade 中设计的。我现在需要一个表格来显示一些数据。问题是,我在林间空地找不到桌子。我在容器类别中搜索,但只找到一个“网格”。但是我在 gtk2hs 的文档中找不到网格,但我需要castTo*
网格的功能才能使用它。
我现在想知道 glade 中的表格在哪里,或者我如何在 gtk2hs 中使用网格。
我的林间空地版本:3.18.2
我的 gtk2hs 版本:0.12.5.7
在 GTK 中,表格是在窗口上排列小部件的一种方式。还有盒子、笔记本等。它们不能用来显示数据。
为了显示数据,您需要一个 TreeView 和一个 TreeModel。
您将数据存储在 TreeModel 中,通常是 ListStore 或 TreeStore,并使用 TreeView 将数据显示为带列的行(来自 ListStore)或树(TreeStore)。
如果您修改 TreeModel 中的数据,TreeView 会相应地更新自身。
而且:
最后,通过 TreeView,您可以对用户交互(鼠标单击、单元格和/或节点编辑等)做出反应。