【问题标题】:tkinter python script does not work windowstkinter python脚本在windows中不起作用
【发布时间】:2015-03-15 20:09:56
【问题描述】:

我正在学习 Python。从书中做练习。 我使用 Tkinter 模块编写了一个简单的示例脚本。 我使用的是 Windows XP Pro。

就是这样:(字面上来自书)

from Tkinter import *
root = Tk()
root.mainloop()

这应该会在桌面上打开一个空白窗口。 当我从命令行或 Idle 内部运行它时, 脚本在一秒钟内退出,并且没有出现任何窗口。

我尝试导入其他模块,它们都工作正常。 我错过了什么?

【问题讨论】:

  • 我注意到这篇文章没有打破命令之间的界限..但我确实打破了......还不知道如何将代码显示为
  • 当您从控制台运行此程序时,您不会得到任何诊断输出,至少如果您使用python.exe 而不是pythonw.exe
  • 您是说当您在 Windows 命令提示符下直接键入“python script.py”并按回车键时,提示符返回时绝对没有错误、警告或任何类型的输出,并且没有 tkinter 窗口出现?
  • 你安装的是什么版本的python。您问题中的代码仅适用于 python 2.x。对于 python 3.x,你需要在 import 语句中使用小写的tkinter
  • @PhilD'Agostino:顺便说一句,我编辑了您的帖子以正确格式化代码。

标签: python windows tkinter


【解决方案1】:

好吧,伙计们,我终于发现了这个错误......为什么 Tkinter 不能工作...... 该脚本在屏幕上创建一个窗口框架,但只要脚本 结束,框架消失了……这本书没有预料到……我发现了这一点 将 raw_input 作为最后一行调用..但然后按下会 没有让脚本退出...不得不使用 Control-C 奇怪..也许这是 Windows 的一个小故障?

我为 Tkinter 下载了一个名为 Graphics.py 的包装器...这有一个明确的 win.close 方法 - 直到你调用它,框架仍然存在..

所以我想我会用那个...

如果有人有其他解决方法,我会很高兴听到它..

谢谢,

【讨论】:

    【解决方案2】:

    以下代码在 Win 8.1 Python 3.6 上的 PyCharm 2017.2.4 下完美运行:

    from tkinter import *
    
    def hello(e):
        print("Hello")
    
    
    tk = Tk()
    # btn = Button(tk, text = "click me", width = 30, height = 5)
    # btn.bind("<Button-1>", hello)
    # btn.pack()
    tk.mainloop()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-25
      相关资源
      最近更新 更多