wxPython:退出全屏

Bre*_*wer 3 python wxpython

要以全屏模式显示wxPython窗口,请使用:

ShowFullScreen(True)
Run Code Online (Sandbox Code Playgroud)

你如何走出全屏?我试过这种明显的方式:

ShowFullScreen(True)
sleep(5)
ShowFullScreen(False)
Run Code Online (Sandbox Code Playgroud)

但这不起作用.当我运行脚本时,没有任何内容出现.5秒钟后,屏幕左上角出现一个大约200x250的窗口,内部没有任何内容.它似乎也没有任何边界.

如果我改成这个

showFullScreen(True)
Run Code Online (Sandbox Code Playgroud)

然后我陷入了一个全屏窗口,我必须使用Alt + F2 - > xkill离开.

Fog*_*ird 5

看起来你需要先Show()进入窗口.(根据文档,您不应该这样做.也许这是一个错误.)我在Mac OS X和Windows上测试过 - 如果您不Show()先调用它们,它们都会出现问题.

另请注意,您不应该睡在主GUI线程中.你会挂起UI.使用CallLater是一种可能的解决方案,如我的示例所示.

工作范例:

import wx

def main():
    app = wx.PySimpleApp()
    frame = wx.Frame(None, -1, 'Full Screen Test')
    frame.Show()
    frame.ShowFullScreen(True)
    wx.CallLater(5000, frame.ShowFullScreen, False)
    app.MainLoop()

if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)