首页 > 解决方案 > 如何使用 tkinter 中的按钮在 Entry 中输入数字

问题描述

我想通过 tkinter 中的按钮添加数字(只有 4 个数字)。我试过这段代码,但它不工作。我需要一些建议。

import tkinter as tk
win = tk.Tk()

var = tk.StringVar()
var_entry = tk.Entry(win,text='var',textvariable=var)

def handle_button(event):
    return var.insert(0,4)

def window():
    global win
    var_entry.grid(row =1 ,column =2)

    button1 = tk.Button(win,text = '1' ,textvariable = 1)
    button1.bind("<Button-1>", handle_button)
    button1.grid(row = 2 , column = 0)
    # similarly I defined all the buttons.


windows()
win.mainloop()

它显示的错误是:

AttributeError:“StringVar”对象没有属性“插入”

标签: pythonpython-3.xtkintertkinter-entry

解决方案


我试过这个,它也有效。

import tkinter as tk
win = tk.Tk()

var = tk.StringVar()
var_entry = tk.Entry(win,text='var',textvariable=var)
var_entry.grid()

def handle_button(event):
    button_arg = event.widget['text']
    var_entry.insert(0,'end')

button1 = tk.Button(win,text = '1')
button1.bind("<Button-1>", handle_button)
button1.grid()
# similarly I defined all the buttons.


windows()
win.mainloop()

推荐阅读