编辑GtkCellRendererCombo时捕获文本

时间:2016-09-27 20:18:35

标签: c gtk3 gtktreeview

我有一个简单的问题。我正在使用GtkTreeView,其中一列显示为GtkCellRendererCombo。用户可以自由编辑单元格的文本,也可以从组合中选择一个值。

问题是,一旦用户从组合中选择一个值,我需要捕获他之前写入单元格的文本。

我无法使用GtkTreeStore对象捕获文本,因为编辑尚未完成,因此GtkTreeStore不是最新的。

有没有人有任何建议?

1 个答案:

答案 0 :(得分:2)

如果您使用的是Gtk 2,它可以与“编辑 - 开始”相关联。 cellrenderercombo的信号。然后执行一个combobox.get_child(),它返回组合的文本条目。然后你会联系一个“改变了”的人。发信号到文本条目以检索用户正在键入的文本。

如果您使用的是Gtk 3,则需要创建自己的自定义单元格渲染器窗口小部件,以便您可以访问该条目。我在Python中创建了自己的组合小部件,以便在条目中自动完成,但我不确定这是否对您有帮助。