【发布时间】:2022-01-08 22:33:15
【问题描述】:
These are the entry fields and the buttons
我想用 2 个按钮在这些不同的输入字段中输入“X”和“O”,但我只能通过调用函数在第一个框中输入。我如何对其他盒子做同样的事情? 就像我的光标在第 5 个框中,我想从第 5 个框中的按钮输入符号。
代码:
from tkinter import *
root=Tk()
e1=Entry(root,font=("arial",50),width=2,borderwidth=5)
e2=Entry(root,font=("arial",50),width=2,borderwidth=5)
e3=Entry(root,font=("arial",50),width=2,borderwidth=5)
e4=Entry(root,font=("arial",50),width=2,borderwidth=5)
e5=Entry(root,font=("arial",50),width=2,borderwidth=5)
e6=Entry(root,font=("arial",50),width=2,borderwidth=5)
e7=Entry(root,font=("arial",50),width=2,borderwidth=5)
e8=Entry(root,font=("arial",50),width=2,borderwidth=5)
e9=Entry(root,font=("arial",50),width=2,borderwidth=5)
def enterX(sign):
e1.delete(0,END)
e1.insert(0,sign)
def enterO(sign):
e1.delete(0,END)
e1.insert(0,sign)
b1=Button(root,text=("X"),command=lambda: enterX("X"),fg="blue")
b2=Button(root,text=("O"),command=lambda: enterO("O"),fg="red")
b3=Button(root,text="Exit Program",command=root.quit)
e1.grid(row=0 , column=0,padx=5,pady=20)
e2.grid(row=0 , column=1,padx=5,pady=20)
e3.grid(row=0 , column=2,padx=5,pady=20)
e4.grid(row=1 , column=0,padx=5,pady=20)
e5.grid(row=1 , column=1,padx=5,pady=20)
e6.grid(row=1 , column=2,padx=5,pady=20)
e7.grid(row=2 , column=0,padx=5,pady=20)
e8.grid(row=2 , column=1,padx=5,pady=20)
e9.grid(row=2 , column=2,padx=5,pady=20)
b1.grid(row=3,column=0)
b3.grid(row=4,column=1)
b2.grid(row=3,column=2)
root.mainloop()
【问题讨论】:
-
我建议您对键盘焦点的概念以及如何获得焦点的小部件进行一些研究。
-
谢谢!会的。
标签: python tkinter button tkinter-entry