问题
我开始使用Python和Tkinter设计GUI应用程序。当我使用cxFreeze冻结脚本时,然后当我在机器上运行该EXE文件时。然后首先打开控制台窗口(在Windows XP的情况下为黑色DOS shell),然后初始化主窗口(Tk()实例)。
目标
不得出现控制台窗口。只应出现Tk()实例。
码
root = Tk()
Label(root,text="hey").pack()
root.mainloop()
功能
Windows XP SP 3
Python 2.7
Tkinter 8.5
答案 0 :(得分:3)
windows=['main.py']
代替console=['main.py']
对于cx_Freeze,这个答案可能会对您有所帮助:https://stackoverflow.com/a/11374527/2256700
答案 1 :(得分:2)
我不确定这是否是任何人都在寻找的答案,但在Python 3.4和Win32下将文件扩展名从.py重命名为.pyw将有效地抑制Python shell。你只需要获得你的Tk GUI窗口。
答案 2 :(得分:1)
假设您的python脚本名为“myscript.py”。
创建一个名为runme.vbs
的文件,其中包含代码:
Set WshShell = CreateObject("WScript.Shell")
cmds=WshShell.RUN("myscript.py", 0, True)
Set WshShell = Nothing