python - pygtk:如何强制消息对话框显示在屏幕中央?

标签 python pygtk dialog

我有一个 glade GUI,我正在使用用 pygtk 创建的 dome gtk.MessageDialog 小部件进行用户交互。我的问题是,每当我在屏幕上抛出一条对话消息时,它们就会到处出现。一个可能出现在右上角,下一个可能出现在左下角、左上角、左中等...

有没有办法强制这些东西显示在屏幕中央或者父窗口所在的位置?

最佳答案

没关系。找到了解决方案。

对于可能徘徊在同一件事上的其他人来说,这个问题的解决方案在于为 gtk.MessageDialog 结构指定一个父值。 如果你在你的类中使用 glade gui,并且你的 glade xml 被加载到一个名为“gui”的变量中,它看起来像这样:

#!/usr/bin/env/python
par = self.gui.get_widget('your_parent_window')

msg = gtk.MessageDialog(type=gtk.MESSAGE_INFO, buttons = gtk.BUTTONS_OK, parent=par)
if msg.run():
    msg.destroy()
    return None

关于python - pygtk:如何强制消息对话框显示在屏幕中央?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1958757/

相关文章:

python - 在 Sphinx 文档生成器中,我可以将整个包(递归地)添加到索引中吗?

python - 将子目录添加到 python 命名空间

python - gobject.type_register() 是做什么的?

java - PDFRenderer 的问题

c++ - 无法将项目添加到 Win32 列表框控件

reactjs - 无法读取未定义的属性 'prepareStyles'

python - 尝试将网页中的JS数据输出到.html输出文件中

python - 更喜欢字典中最大值的键?

gtk - 如何制作正确的只读 PyGTK 文本条目?

python - Puppy Linux - 导入 gtk 在 Python 中抛出错误