当以“旧”方式在 Python 中创建 GTK 对话框时:
class URLDialog(Gtk.Dialog):
def __init__(self, parent):
Gtk.Dialog.__init__(self, _t("URL_DLG"), parent, 0,
(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_OK, Gtk.ResponseType.OK))
我收到以下警告:
PyGTKDeprecationWarning:“buttons”参数必须是 Gtk.ButtonsType 枚举值。请使用“add_buttons”方法添加按钮。请参阅:https://wiki.gnome.org/PyGObject/InitializerDeprecations
该链接不是很明确,并且尝试将按钮从初始化器中取出会导致其他更严重的问题。
我的问题是:初始化这种对话框的正确、官方和正确的方法是什么?
答案1
我无法重建你的问题,但我认为这应该可以解决它:
Gtk.Dialog.__init__(self, _t("URL_DLG"), parent, 0)
self.add_buttons(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_OK, Gtk.ResponseType.OK)
编辑:正如 OP 指出的那样
Gtk.Dialog.__init__(self, title = _t("URL_DLG"),
parent = parent,
flags = 0)
self.add_buttons(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_OK, Gtk.ResponseType.OK)