使用 pygtk 更新销毁数据

发布于 2024-10-12 09:18:52 字数 225 浏览 6 评论 0原文

我正在使用 Glade 和 pygtk,并且有一个带有树视图的窗口,其中有一个按钮可以打开一个对话框,为树视图创建一个新条目。我想在对话框被销毁时更新主窗口中的树视图,但我看不到执行此操作的简单方法。

--编辑--

找到答案,我只需要连接Windows销毁信号

(dialog).window.connect('destroy', self.foo)

I'm using glade and pygtk and I have a window with a treeview with a button that opens a dialog that creates a new entry for the treeview. I want to update the treeview in the main window when the dialog is destroyed but I can't see a simple way to do this.

--Edit--

Found the answer, I just needed to connect the windows destroy signal

(dialog).window.connect('destroy', self.foo)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

刘备忘录 2024-10-19 09:18:52

正确的方法是处理主窗口中对话框的响应:

def on_menu_item_activated(self, widget, data=None):
    dialog = FunkyDialog()
    response = dialog.run()

    if response == gtk.RESPONSE_OK:
        // update treeview

也许更好的方法是使用 观察者设计模式。当用户按“确定”时,您将保存数据。这会通知树视图已进行更改,从而导致其重新加载。

The correct approach is to handle the response of the dialog in the main window:

def on_menu_item_activated(self, widget, data=None):
    dialog = FunkyDialog()
    response = dialog.run()

    if response == gtk.RESPONSE_OK:
        // update treeview

Perhaps a better way of doing this would be to use the Observer design pattern. When the user presses Ok, you save your data. This notifies the treeview that a change has been made, which causes it to reload.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文