在Python GTK中打开自定义UI的弹出窗口

3 投票
1 回答
1931 浏览
提问于 2025-04-17 00:51

我刚开始学习Python GTK编程。在我的界面里有一个按钮。当我点击这个按钮时,我需要打开一个弹出窗口,里面有三个按钮和一些标签。我还需要把一些变量从主窗口传递到弹出窗口。在弹出窗口的按钮被点击时,我需要更新这些变量。然后,当我关闭这个弹出窗口时,我希望在主窗口能得到更新后的变量值。

1. 我可以在Python GTK中做到这一点吗?

2. 如果可以,我该怎么做呢?

3. 我可以使用glade文件来创建这个弹出窗口吗?

1 个回答

6

你可能需要对话框。

来自pygtk:

 import gtk

 label = gtk.Label("Nice label")
 dialog = gtk.Dialog("My dialog",
                    None,
                    gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,
                    (gtk.STOCK_CANCEL, gtk.RESPONSE_REJECT,
                     gtk.STOCK_OK, gtk.RESPONSE_ACCEPT))
 dialog.vbox.pack_start(label)
 label.show()
 checkbox = gtk.CheckButton("Useless checkbox")
 dialog.action_area.pack_end(checkbox)
 checkbox.show()
 response = dialog.run()
 dialog.destroy()

撰写回答