这是我的测试代码的一个片段
from tkinter import *
master=Tk()
master.geometry('640x340')
Button(master,text='check').pack()
def new():
print('done')
from pywinauto import Desktop, Application
master.after(1000,new)
master.mainloop()
只需一秒钟,创建的tkinter窗口就会缩小,按钮也会发生同样的情况。这只是我在试图构建的应用程序中跟踪到这个问题后编写的测试代码。有人能告诉我为什么窗户的大小会改变,我能做些什么来防止这种情况发生吗?
我已经尽我所能检查过了,官方文档只提到过一次Tkinter,那是指pywinauto的后端,我认为这与此无关。这是第5页。
此问题发生在C:UsersAdministratorAppDataLocalProgramsPythonPython311Libsite-packagespywinauto **win32functions.py** SetProcessDpiAwareness
中。
所以解决这个问题的方法是这样的:
import ctypes
ctypes.windll.shcore.SetProcessDpiAwareness(0)
from tkinter import *
master=Tk()
master.geometry('640x340')
Button(master,text='check').pack()
def new():
print('done')
from pywinauto import Desktop, Application
master.after(1000,new)
master.mainloop()