我写了一个简短的脚本来查找和保存某些文件。我使用以下行选择一个保存位置:
ask_dir = tkFileDialog.askdirectory(initialdir= os.path.dirname(sys.argv[0]))
Run Code Online (Sandbox Code Playgroud)
但是,askdirectory窗口(至少在我的WinXP计算机上)过小,并且无法调整大小。Tkinter似乎没有任何明显的命令来增大此窗口的大小,请参见此处的链接。我怎样才能解决这个问题?
在 Windows 上,FolderBrowserDialog似乎使用了该功能,但不能轻松调整大小,尽管可能可以通过一些努力来调整大小。
可以在此处找到一些线索,可以使用pywin32模块将此代码“翻译”为 Python 。
下面是一些调整窗口大小的基本代码,以说明这是如何工作的:
import win32gui
win = win32gui.FindWindowEx(None, None, "NULL,"#32770", None)
win32gui.SetWindowPos(win, 0, 500, 500, 900, 900, 0)
Run Code Online (Sandbox Code Playgroud)
您还需要 a) 获取当前位置,并使用它而不是硬编码值,以及 b) 调整窗口内所有小部件的大小(请参阅链接文章)。
问题:
#32770(win7, 64-bit),对我来说它看起来不太便携......我没有调查这个原因。askdirectory正在阻塞,因此您需要启动一个单独的线程,轮询窗口是否打开,然后调整其大小。这不仅丑陋,而且用户还可能在调整大小之前看到旧窗口大小的“闪烁”。我了解您的问题,并且“打开文件夹”对话框的可用性很差,但似乎需要付出大量努力才能增加大小。
用其他东西替换它可能是一种选择,尽管这会破坏操作系统的 UI 约定,这也不好......