set_text在哪里设置Python-GTK3中的输入文本?

无臭虫

在以前的pyGTK中,您可以使用combobox.set_title(text)设置输入到组合框中的文本。现在,在Python-GTK3中,它似乎不起作用,并且该示例不包含对其进行设置。在这种情况下,是否有新的方法来设置选择?

何塞·丰特

正如@Rawing所说,这个问题有些困惑,但目标似乎是:在Gtk.ComboBox上输入文本。

pyGTK和Gtk + 2具有该set_title方法。Gtk + 3也具有最新的3.10版本,但如已评论,它已被弃用。无论如何,该方法在两个版本上都相同,那就是:“将菜单的标题设置为撕开模式”,这与条目无关。

所示示例使用带有模型的Gtk.ComboxBox。要设置条目的内容,我们可以设置模型中的活动项目,而Gtk.Entry将通过显示同一项目中的文本来反映该内容。

如果添加name_combo.set_active (1)示例代码中,如下所示:

...
name_combo = Gtk.ComboBox.new_with_model_and_entry(name_store)
name_combo.connect("changed", self.on_name_combo_changed)
name_combo.set_entry_text_column(1) 
name_combo.set_active (1) # ADD THIS LINE <--------------------
vbox.pack_start(name_combo, False, False, 0)
....

您将验证来自Gtk.ComboBox的Gtk.Entry是否将被模型中的文本填充。

如果您想以某种方式直接处理Gtk.Entry,则可以使用Gtk.ComboBox继承的get_child方法(来自Gtk.Bin)。然后,您可以使用Gtk.Entryset_text方法,例如:

name_combo = Gtk.ComboBox.new_with_model_and_entry(name_store)
name_combo.connect("changed", self.on_name_combo_changed)
name_combo.set_entry_text_column(1)
name_combo.get_child ().set_text ("Hello World") # <-------------- HERE
vbox.pack_start(name_combo, False, False, 0)

如果您如上所示更改示例,则在运行该示例时,Gtk.Entry将按设置显示文本。

文本将不会出现在模型中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章