我正在尝试学习 Python 并在 Python 中尝试一些 GUI,并遇到了这个 Tkinter 模块。我的代码运行了,但是运行时窗口没有出现。我的代码如下:
from Tkinter import *
#to create a root window
root = Tk()
程序运行,没有错误,但窗口没有显示。
原文由 mkumars 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在尝试学习 Python 并在 Python 中尝试一些 GUI,并遇到了这个 Tkinter 模块。我的代码运行了,但是运行时窗口没有出现。我的代码如下:
from Tkinter import *
#to create a root window
root = Tk()
程序运行,没有错误,但窗口没有显示。
原文由 mkumars 发布,翻译遵循 CC BY-SA 4.0 许可协议
正如其他答案所指出的,您需要在根对象上调用 mainloop
。
我推荐 OO 风格的编程,我还建议 不要 进行全局导入(即: _不是_“来自 Tkinter 导入 *”)。
这是我通常开始使用的模板:
import Tkinter as tk
class ExampleView(tk.Frame):
def __init__(self, root):
tk.Frame.__init__(self, root)
l = tk.Label(self, text="your widgets go here...", anchor="c")
l.pack(side="top", fill="both", expand=True)
if __name__=='__main__':
root = tk.Tk()
view = ExampleView(root)
view.pack(side="top", fill="both", expand=True)
root.mainloop()
这使得您可以轻松地将主要逻辑放在文件的开头,并将根目录的创建和 mainloop
的调用放在一起,我认为这会使代码更容易理解一些。它还使重用此代码更容易一些(即:您可以创建一个更大的程序,其中这是可以创建的几个窗口之一)
原文由 Bryan Oakley 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
将此添加到您的代码中
root.mainloop()
, 这是一个教程。回应您的评论