访问GTK +中的小部件

jld*_*ont 1 python gtk

从代码动态构建GTK +窗口小部件可以直接访问子窗口小部件.

现在,在从.glade文件构建GTK + Dialog(例如)时,如何访问子窗口小部件?

class ConfigDialog(object):
    def __init__(self, glade_file, testing=False):
        self.testing=testing
        builder = gtk.Builder()
        builder.add_from_file(glade_file)
        self.dialog = builder.get_object("config_dialog")
        self.dialog._testing=testing
        self.dialog._builder=builder
Run Code Online (Sandbox Code Playgroud)

.get_internal_child没有成功地修补了一下.

问:假设我想访问名为"name_entry"的小部件,我该怎么做呢?

Ed.*_*Ed. 7

你正在打电话

self.dialog = builder.get_object("config_dialog")
Run Code Online (Sandbox Code Playgroud)

你也应该能够做到

self.nameEntry = builder.get_object("name_entry")
Run Code Online (Sandbox Code Playgroud)

这至少是python-glade的工作方式,我认为GtkBuilder是一样的.