我正在用python tkinter制作一个类似于计算器的支付,我不确定我的代码出了什么问题。下面的代码都在一个名为menu的类下。这些代码只是片段,因为我的代码很长。我想要一个可以在键盘上键入数字7并在屏幕上显示的事件。你能告诉我这有什么问题吗?我也可以有最大宽度,可以显示在屏幕上,使该号码将不会接受任何更多的号码?非常感谢。
def Payment(self, top=None):
top.geometry("850x315+500+200")
top.resizable(0, 0)
top.title("Payment")
pay.bind("<Key>", self.key)
self.label_1 = Label(pay)
self.label_1.pack()
self.labelImage_1 = Image.open("./images/calculator/calc.png")
self.labelResized_1 = self.labelImage_1.resize((850, 315), Image.ANTIALIAS)
self.labelImage_1 = ImageTk.PhotoImage(self.labelResized_1)
self.label_1.configure(image=self.labelImage_1)
self.label1.configure(background="#ffcc70")
self.button_1 = Button(pay)
self.button_1.place(relx=0.57, rely=0.27, width=80, height=50)
self.button_1.configure(relief="flat")
self.button_1.configure(overrelief="flat")
self.button_1.configure(activebackground="#ffffff")
self.button_1.configure(cursor="hand2")
self.button_1.configure(foreground="#ffffff")
self.button_1.configure(background="#303030")
self.button_1.configure(font="-family {Microsoft New Tai Lue} -size 30 -weight bold")
self.button_1.configure(anchor="center")
self.button_1.configure(borderwidth="0")
self.button_1.configure(text="7")
self.button_1.configure(command=self.button_1_handler)
self.display = Entry(pay, font=("Microsoft New Tai Lue", 36, "normal"), width=11)
self.display.place(relx=0.03, rely=0.42, width=430, height=100)
self.display.configure(bg="#e6e6e6", fg="grey", relief="flat", state="readonly")
self.display.configure(relief="flat")
def key(self, event):
print("pressed", repr(event.char))
press = event.char
if press == "7":
self.button_1.configure(state=ACTIVE)
self.button_1_handler()
def button_1_handler(self):
self.display.configure(state="normal")
self.display.insert("end", "7")
self.display.configure(state="readonly")
暂无答案!
目前还没有任何答案,快来回答吧!