Я работаю над проектом Python/Tkinter, для которого требуются программно созданные кнопки из списка, как показано ниже.
Когда нажата определенная кнопка, я хотел бы, чтобы эта кнопка стала "sunken"
, пока не будет нажата другая кнопка, на этом этапе эта кнопка станет "sunken"
, а кнопка, на которую нажали первой, станет 'normal'
.
Пока я не могу понять, как это сделать, не кодируя каждую кнопку по отдельности.
В идеале relief
должен быть установлен в функции press()
.
import tkinter
window = tkinter.Tk()
window.title("Practice UI")
window.grid()
numbers = ["1","2","3","4","5","6","7","8","9"]
def buttonCreator(labels):
n = 0
button = []
for x in range(0,3):
for y in range(0,3):
if n<=len(labels)-1:
button.append(tkinter.Button(window, text = labels[n], command = lambda x = labels[n]:press(x)))
button[n].grid(row = x, column = y)
n +=1
def press(value):
print(value)
buttonCreator(numbers)
window.mainloop()
config
для виджетов кнопок? - person Bryan Oakley   schedule 19.07.2015