Python tkinter怎么才能脱离黑窗口?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python tkinter怎么才能脱离黑窗口?相关的知识,希望对你有一定的参考价值。

恩接触几天的python新手一只…请问Python里怎么才可以直接点击运行python的GUI,让那个tk窗口直接出来,而不是先出来一个exe的黑窗口…在窗口里再套一个tk的窗口?(如下图)这样不仅不美观…而且一旦误点了关闭exe窗口,还会导致tk一起被关掉。请问这个有办法解决么?

额还有一个问题~即使编译完成以后貌似还是一个.py文件…(还是说这东西根本就是边运行边动态编译所以根本就没有compile这一说么…)这在没有安装python3的机器上应该就没法运行了吧…?请问怎么才能将这个python文件编译并打好包(比如bin或者exe文件),让它能够方便的传给多台电脑并且直接运行呢?
感谢~~
或者说…是不是这个py的运行必须要python的解释器py.exe存在才可以运行?要么用命令行要么用IDE才可以打开…………请问有没有办法把两者打好包直接传给不会编程的人,一点开就可以使用编好的软件呢…?

1、不要黑窗口:将文件保存为 文件名.pyw 这样脚本会被默认为用pythonw.exe 运行,它是没有控制台(也就是黑窗口)的

2、打包:使用pyinstaller。首先安装,打开cmd,运行pip install pyinstaller,等待安装好后可以用pip -F 文件.py 打包,这样就会在文件夹下面出现一个名为dist的文件夹,里面会出现你的exe文件。如果打包时,有依赖项(比如你使用了tkinter模块),那么还需要添加 “--hidden-import 依赖模块”。如果不想要黑窗口,那就添加-w

总结:你可以用 pyinstaller 文件.py -F --hidden-import tkinter -w 打包,除了第一个pyinstaller外其他各个参数的顺序可以调换(比如,你写成pyinstaller -F 文件.py --hidden-import tkinter -w 也可以)

参考技术A 写好的程序用用pythonw.exe带w的执行文件运行。就不会产生窗口。

py属于开源软件,不提倡exe这种打包方式。
只需要把python解释器和代码放倒一起,在客户机上解包
运行时只要建立一个快捷方式,指向
python 源代码.py
或者
pythonw 源代码.py

就可以了本回答被提问者和网友采纳
参考技术B 把你写好的python程序文件的扩展名改为.pyw就会调用pythonw.exe执行不带控制台的程序。如何想要别人也机器也能运行你的程序可以用py2exe软件。 参考技术C pyinstaller 加一个属性就行了

-w指令
直接发布的exe应用带命令行调试窗口,在指令内加入-w命令可以屏蔽
参考技术D 用py2exe模块可以将python程序编译成exe文件.不会有控制台.

python TKinter的主窗口运行程序完毕后,怎么让其自动关闭

参考技术A

采用的是main函数对主窗口运行程序完毕自动关闭的命令:

from tkinter import *def main():

root = Tk()

b = Button(root, text='退出', command=root.quit)

b.pack()

mainloop()if __name__ == '__main__':

main()

扩展资料:

main函数的应用:

程序执行的出发点,main,是相对而言的,正如语音学理论关注的是泛音,泛音是程序中main以外的功能,产生泛音是为了迎合思维方式而不是某种模式。有主次之分,对其实现进行了详细的分析,既可以模块化程序,又可以实现一个封闭的整体。

模块化编程方法是将整个程序划分成几个功能单一的程序模块,然后分别实现,最后,所有程序模块都像积木一样组装起来。

利用函数实现程序的模块化,大大减少了编码工作量,在函数或复合语句块中定义的自动类型变量称为局部变量。

局部变量的作用域从局部变量定义的位置开始,一直到该函数或复合语句的结尾,局部变量存活时间短。调用局部变量的函数时,将分配局部变量的内存空间,函数调用后,释放局部变量的内存空间。

函数参数和参数属于局部变量,调用函数时,将分配参数内存空间,函数调用后,参数内存空间被释放,C语言函数参数传递可分为三种情况:简单变量作为函数参数,数组名作为函数参数,指针作为函数参数。

参考资料来源:

百度百科-main函数

以上是关于Python tkinter怎么才能脱离黑窗口?的主要内容,如果未能解决你的问题,请参考以下文章

python怎么用tkinter

python的tkinter运行不了

如何给 Python Tkinter 给窗口加标题、改变 button 文本?

python TKinter的主窗口运行程序完毕后,怎么让其自动关闭

tkinter 关闭窗口怎么把整个程序都结束??

python 3.x tkinter,将来自opencv cv2的帧集成到tkinter窗口中