我刚刚将Python从3.8升级到3.10,Tkinter全屏属性不再像以前那样工作。
我使用的是Mac OS Big Sur 11.6.6(Macbook M1)。我在这台Macbook上安装了Python 3.8,它一直运行良好,直到我今天升级了Python。
下面是代码,根窗口在Python 3.10中没有全屏显示:
if __name__ == '__main__':
root = tkinter.Tk()
root.attributes('-fullscreen', True)
root.mainloop()
任何帮助都将是非常感谢的,因为我卡住了。我还看到了Python 3.10中UI的其他问题,所以如果我不能解决这些问题,我可能会回到Python 3.8:(
更新1我注意到我的MacBook在全屏属性下运行时发出哔哔声,但如果我注解掉该行,它就不会发出哔哔声。
我还注意到当我在键盘上输入时,比如在Entry小部件中,它会发出同样的哔哔声,在Python 3.8中它没有这样做,所以可能是相关的。
UPDATE 2我可以做一个有点难看的变通方案,使用一个延迟,并在250毫秒后用root.after(...)函数设置全屏属性。然后它就工作了。它看起来不太好,因为在实际程序打开之前,空白的白色背景闪过。
1条答案
按热度按时间wnvonmuf1#
您需要改用
root.wm_attributes()
。示例
另一种方法是调用tcl,如下所示
只能使用其中一种方法。