陈讨厌 2019-05-06 20:25 采纳率: 100%
浏览 561
已采纳

一个关于python tkinter中text与Botton的问题

本人萌新
写了个一按Botton实现在text中显示余数的代码
我希望是totle=totle-var能够不断循环,显示出余数
例如我输入5,一按botton,text显示的是15,再按一下botton,显示的是10
不知道怎么改代码能够实现

import tkinter as tk
window=tk.Tk()
window.title('my window')
window.geometry('200x200')
e=tk.Entry(window,show='')
e.pack()
def insert_point():
    var=e.get() 
    var=int(var)
    totle=20
    totle=totle-var
    t.insert('insert',totle)
    var=e.get()
def delete_point():
    t.delete('1.0','end')
b1=tk.Button(window,text='收入',width=15,height=2,command=insert_point)
b1.pack()
b2=tk.Button(window,text='清除',width=15,height=2,command=delete_point)
b2.pack()
t=tk.Text(window,height=2)    
t.pack()

window.mainloop()
  • 写回答

1条回答

  • BuXianShan 2019-05-06 22:05
    关注

    你好,我稍微修改了一点你的代码,希望可以帮到你。(把totle改成全局变量就好了)

    import tkinter as tk
    
    window = tk.Tk()
    window.title('my window')
    window.geometry('200x200')
    e = tk.Entry(window, show='')
    e.pack()
    # totle是全局变量
    totle = 20
    
    
    def insert_point():
        var = e.get()
        var = int(var)
        # 声明全局变量totle
        global totle
        totle = totle-var
        t.delete('1.0', 'end')
        t.insert('insert', totle)
        var = e.get()
    
    
    def delete_point():
        t.delete('1.0', 'end')
    
    
    b1 = tk.Button(window, text='收入', width=15, height=2, command=insert_point)
    b1.pack()
    b2 = tk.Button(window, text='清除', width=15, height=2, command=delete_point)
    b2.pack()
    t = tk.Text(window, height=2)
    t.pack()
    
    window.mainloop()
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!