You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tkinter窗口无法打开?制作简易计算器无报错但窗口不显示

解决Tkinter计算器窗口无法打开的问题

我帮你定位到了几个关键问题,尤其是导致窗口完全不显示的核心原因:

核心问题:缺少主事件循环

Tkinter程序必须通过调用mainloop()来启动GUI的事件循环——没有这一步,窗口对象虽然被创建了,但不会被渲染出来,也不会响应任何事件,这就是你看不到窗口也没报错的根本原因。

其他代码中的小问题

  • StringVar需要实例化:你写的Chiffres=StringVar少了括号,应该是Chiffres=StringVar(),这样才能创建一个有效的字符串变量对象,方便后续绑定输入框之类的组件。
  • 按钮赋值与布局分离:你现在写的B7=Button(...).grid(...)会把grid方法的返回值None赋值给B7,如果之后需要修改按钮的属性(比如状态、文本),这种写法会导致无法操作按钮,建议分开写:
    B7 = Button(Calculette, text="7")
    B7.grid(column=0, row=1)
    

修正后的完整示例代码

# 注意:Python3中是tkinter(小写),Python2是Tkinter(大写),根据你的环境调整
from tkinter import *  # 或者 from Tkinter import * (Python2)

Calculette = Tk()
Calculette.title("Calculette")
Chiffres = StringVar()  # 补上括号完成实例化

# 按钮创建与布局分离
B7 = Button(Calculette, text="7")
B7.grid(column=0, row=1)

B8 = Button(Calculette, text="8")
B8.grid(column=1, row=1)

B9 = Button(Calculette, text="9")
B9.grid(column=2, row=1)

B4 = Button(Calculette, text="4")
B4.grid(column=0, row=2)

B5 = Button(Calculette, text="5")
B5.grid(column=1, row=2)

# 必须添加主事件循环,窗口才能显示
Calculette.mainloop()

运行这段修正后的代码,你应该就能看到计算器窗口了,之后可以继续完善其他按钮和计算逻辑~

内容的提问来源于stack exchange,提问作者Louis D.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:24:14