如何使用PyGObject使窗口居中

gae*_*anm 12 python window pygobject

我目前正试图将我的应用程序窗口放在中心,但使用PyGObject(GTK + 3)似乎是不可能的.实际上,使用pyGTK,我这样做:

window.set_position(gtk.WIN_POS_CENTER)
Run Code Online (Sandbox Code Playgroud)

所以这次我正在尝试这个:

window.set_position(Gtk.WIN_POST_CENTER)
Run Code Online (Sandbox Code Playgroud)

set_position似乎仍然存在,但Gtk.WIN_POST_CENTER常量不起作用:

AttributeError:'gi.repository.Gtk'对象没有属性'WIN_POS_CENTER'

mat*_*ata 16

pydoc告诉你你需要知道什么:

>>> help(window.set_position)

Help on method set_position in module gi.repository.Gtk:

set_position(*args, **kwargs) method of gi.overrides.Gtk.Window instance
    set_position(self, position:Gtk.WindowPosition)
Run Code Online (Sandbox Code Playgroud)

Gtk.WindowPosition 包装枚举值,所以尝试:

window.set_position(Gtk.WindowPosition.CENTER)
Run Code Online (Sandbox Code Playgroud)

编辑:似乎对于较新的版本,docstring不再显示help(window.set_position),请改用help(window)(或print(window.get_position.__doc__)).