изменить текст кнопки в соответствии с ее идентификатором? - PullRequest
0 голосов
/ 05 апреля 2020

Вот код

bt1 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(1))
bt2 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(2))
bt3 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(3))
bt4 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(4))
bt5 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(5))
bt6 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(6))
bt7 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(7))
bt8 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(8))
bt9 = Button(root, text=" ", height=3, width=3, command=lambda:OnButtonClick(9))

Я хочу изменить текст кнопки в зависимости от того, какая кнопка нажата, я знаю, возможно ли это с помощью оператора if else, но нет ли эффективного способа сделать это?

1 Ответ

0 голосов
/ 05 апреля 2020

Не уверен, что я правильно понял, но вы после чего-то вроде этого?

from tkinter import *

root = Tk()
root.geometry('300x200')

def OnButtonClick(button_number):
    widget = button_list[button_number-1]
    widget.config(text='Got pressed')

bt1 = Button(root, text=" ", command=lambda:OnButtonClick(1))
bt1.pack()
bt2 = Button(root, text=" ", command=lambda:OnButtonClick(2))
bt2.pack()

button_list = [bt1, bt2]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...