如何在运行时将项目添加到通过空地创建的 gtk.ComboBox 中?
我正在使用 Glade 3 为我正在开发的 PyGTK 应用程序创建 GtkBuilder 文件。 它用于管理带宽,因此我有一个 gtk.ComboBox 用于选择要跟踪的网络接口。
如何在运行时将字符串添加到组合框? 这就是我到目前为止所拥有的:
self.tracked_interface = builder.get_object("tracked_interface")
self.iface_list_store = gtk.ListStore(gobject.TYPE_STRING)
self.iface_list_store.append(["hello, "])
self.iface_list_store.append(["world."])
self.tracked_interface.set_model(self.iface_list_store)
self.tracked_interface.set_active(0)
但组合框仍然是空的。 我尝试过 RTFM'ing,但只是更加困惑,如果有的话。
干杯。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
或者您可以使用
gtk.combo_box_new_text()
。 然后,您将能够使用 gtk 快捷方式 追加,插入,前置 和删除 文本。Or you could just create and insert the combo box yourself using
gtk.combo_box_new_text()
. Then you'll be able to use gtk shortcuts to append, insert, prepend and remove text.嘿,我实际上可以回答我自己的问题!
您必须将 gtk.CellRendererText 添加到其中才能实际渲染:
当然,从 PyGTK 常见问题解答。
感谢 Joe McBride 更正了示例
Hey, I actually get to answer my own question!
You have to add gtk.CellRendererText into there for it to actually render:
Retrieved from, of course, the PyGTK FAQ.
Corrected example thanks to Joe McBride