我处于一个深度嵌套的类中(继承自Gtk.Box
),我需要获取对我所在的 GtkWindow 的引用,以便传递给对 Gtk.MessageDialog() 的调用,但我似乎找不到对它的引用。
self.props.window
我也尝试过,但是self.get_parent_window()
没有成功。
我尝试做的一切都会导致以下错误:
TypeError: Expected Gtk.Window, but got GObjectMeta
代码片段如下:
def on_tb_del_clicked(self,widget):
question = _("Are you sure you want to do this?")
win = self.get_parent_window()
dialog = Gtk.MessageDialog(win,0,Gtk.MessageType.QUESTION,
Gtk.ButtonsType.YES_NO,question) # <<Exception
response = dialog.run()
请帮忙 :)
答案1
尝试widget.get_toplevel()
方法来查找父窗口。