- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚开始学习 tkinter,我在这里缺少一些基本知识。当我除了创建一个空白窗口什么都不做时,我得到的结果好坏参半。这是代码:
from tkinter import *
from tkinter import ttk
root = Tk()
发生的情况是,如果我在 python shell 中运行它,它会完美运行(就像在 IDLE 编辑器中简单地按 F5),然后会弹出一个空白的小窗口并保持打开状态,直到我关闭它。
但是如果我简单地双击 .pyw 文件,什么也不会发生。如果我将其另存为 .py,则相同。
如果我将它另存为 .py 并 添加 input()
到末尾,然后会弹出一个空白小窗口并保持打开状态。将其添加到 .pyw 没有任何效果;仍然没有任何反应。这在一定程度上是有道理的,因为 .pyw 隐藏了控制台。
但是我在这里做错了什么?我需要做什么才能制作一个只显示空白窗口而不显示控制台的 .pyw?
最佳答案
问题不在于文件类型,您会很高兴知道这一点。保存为 .pyw
只是意味着当文件运行时控制台不会出现(没有附加字符串,代码运行完全相同) - 无论代码是什么,都没有异常(exception)。
您需要做的是将此添加到代码的末尾(这对所有 tkinter
程序都是必需的):
root.mainloop() # this will launch the window
在我们进入 tkinter
事件循环之前,窗口不会出现,程序将停留在事件循环中,直到我们关闭窗口。
事件循环不仅处理来自用户(例如鼠标点击和按键)或窗口系统(例如重绘事件和窗口配置消息)的事件,它还处理 tkinter< 排队的操作
本身。这些操作包括几何管理(通过 .pack()
方法排队)和显示更新。这也意味着在您进入 mainloop()
之前,应用程序窗口不会出现。
我认为之所以不需要在IDLE中调用mainloop()
是因为IDLE本身就是一个tkinter
程序,它已经有一个事件循环了.因此,您在 shell 中键入的 tkinter
代码可能已绑定(bind)到 IDLE 的事件循环。
关于python - .pyw tk 程序立即关闭?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21959542/
我有一个永远不会自动退出的 python 程序。但是,它确实需要在某些时候这样做。它必须在没有控制台的情况下运行,所以我将它保存为 .pyw,但这意味着没有 X 可以单击以关闭它。如何在不重新启动机器
我刚刚开始学习 tkinter,我在这里缺少一些基本知识。当我除了创建一个空白窗口什么都不做时,我得到的结果好坏参半。这是代码: from tkinter import * from tkinter
我有一个 .pyw 脚本,当我双击它等时它会工作并且它会保持打开状态直到我关闭它但是我已经将它添加到注册表以在启动时运行。它确实在启动时运行,但不会像设置的那样保持打开状态。它闪烁 gui,然后关闭。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
问题 我已经创建了一个基本的 python 脚本,使用 Flask 来呈现一个 HTML 页面。在 Windows 10 上,该脚本可以完美地作为 *.py 文件,但是当作为 运行时*.pyw 文件,
所以,我对 Python 非常陌生。我刚刚从 http://webprojects.eecs.qmul.ac.uk/fa303/pgs/tutorial.html 下载了一个文件.它是一个 PYW 文
所以我知道 python 语言有 .py 和 .pyw 扩展名,不同之处在于 .pyw 运行静默并且没有弹出窗口,C++ 中有这样的东西吗?如果没有,是否可以让我的代码静默运行?启动它的替代方法? 最
我有一个脚本,可以将 Google Earth .kml/.kmz 文件转换为 shapefile,并使用用 Tkinter 编写的简单 GUI 界面。 我的问题是它在 .py 扩展名下工作正常,但是
我有一个带有 wxpython GUI 和一些命令行参数的 python 程序。我用 py2exe 生成了一个 Windows 可执行文件。我不想在后台有一个命令行窗口,所以 py2exe 使它成为一
我想使用 .bat 文件来运行 python 脚本而不显示命令提示符。 我读过将脚本保存为 .pyw 应该可以解决问题,但不知何故命令提示符不断出现。 我的 .bat 文件如下所示: @C:\User
有人给了我一个 python 文件来打开并用作资源。唯一的问题是我对Python一无所知,它与我的编码基础知识有很大不同。 该文件不是普通的 .py 文件,而是无控制台的 .pyw 文件。我已经导入了
我试图在没有控制台的情况下将 pyw 文件编译成 pyc。当我尝试用它直接编译时,结果是一个 pywc 文件,但似乎 pythonw.exe 没有将该扩展名注册为它的文件之一,就像 python.ex
如果我将代码文件保存为 .pyw,则不会出现控制台窗口 - 这正是我想要的 - 但如果代码包含对 os.system 的调用,我仍然得到一个讨厌的控制台窗口。我假设它是由对 os.system 的调用
我正在使用 tkinter 制作一个 Python (3) GUI 程序,我正在使用重定向功能将我所有的打印语句定向到一个 GUI 滚动文本框。 这是重定向函数(与 tkinter 窗口在同一个类中)
我正准备为 Windows 用户调整 ANKI SRS 的 music fiddler 插件。Anki 仅运行以 .py 结尾的附加组件,而不是 pyw。有没有办法隐藏运行代码时自动弹出的控制台。 如
运行一个简单的 .py 或 .pyw python 文件会导致 python.exe显示在任务管理器下。 python myApp.py python myApp.pyw 但是,当我们尝试在不使用控制
有时(在客户的 PC 中)我需要一个 python 脚本在 Windows shell 中执行,如 .CMD 或 .BAT,但没有与 PYTHON/PYTHONW 关联的 .py 或 .pyw 扩展名
请在我编写的python代码下面找到: from tkinter import * import os fenetre = Tk() label = Label(fenetre, text="Powe
virtualenv 不将 .py(w) 文件与 virtualenv 版本的 Python 可执行文件相关联的原因是什么?考虑到没有像 shebang 这样的机制,这似乎是 Windows 上 vi
我是一名优秀的程序员,十分优秀!