Я хочу, чтобы информация вводилась при нажатии кнопки с красным фоном - PullRequest
1 голос
/ 18 июня 2020

Я хочу, чтобы информация вводилась, когда я нажимаю кнопку с красным фоном. / Но это не работает. / Как заставить его войти, когда фон кнопки красный?

color= ['red', 'orange', 'yellow', 'green', 'blue', 'violet', 'purple', 'green yellow', 'snow', 'maroon1']

b0 = tk.Button(root, text = (out0), bg=random.choice(color), command=lambda:code(out0))
if b0 == 'red' :
        pin += str(value)
        e.insert('end', value)

1 Ответ

3 голосов
/ 18 июня 2020

if b0 == 'red': сравнивает кнопку b0 со строкой 'red'. Если задуматься, становится ясно, что кнопка никогда не будет равняться строке.

Вероятно, вы захотите получить текущий цвет фона кнопки. Поскольку bg - это параметр конфигурации, вы можете использовать метод cget для чтения его текущего значения:

if b0.cget('bg') == 'red':

Кстати, если вы хотите измените значение bg конфигурации на уже существующем виджете, вы можете использовать метод config: b0.config(bg='red'). Для получения дополнительной информации о конфигурации в Tkinter см. на этой странице .

Обратите внимание, что для удобства виджеты Tkinter также реализуют интерфейс частичного словаря, поэтому вы также можете использовать b0['bg'] для чтения или записи значение.

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