Кнопка get для вычитания значения в несколько раз tkinter - PullRequest
0 голосов
/ 15 мая 2018

Я пытаюсь создать кнопку, которая уменьшит значение целого числа.Он работает один раз (с 10 до 9), но я не могу заставить его перейти с 9 на 8.

from tkinter import *

w = Tk()
w.geometry('500x500')

integer = 10

def subtract():
    new_integer = integer - 1
    l1.config(text=new_integer)

l1 = Label(w, text=integer, bg='white', fg='black')
l1.config(height=2, width=7)
l1.grid(row=1, column=1)

b1 = Button(w, text='<<< 1', bg='black', fg='white', command=subtract)
b1.config(height=2, width=7)
b1.grid(row=1, column=0)

w.mainloop()

Ответы [ 2 ]

0 голосов
/ 15 мая 2018

переменная будет всегда рассчитываться 10 - 1, вам необходимо обновить ее следующим образом

def subtract():
    global integer
    new_integer = integer - 1
    integer -= 1
    l1.config(text=new_integer)
0 голосов
/ 15 мая 2018

Вы никогда не обновите значение new_integer.

Попробуйте:

integer = 10

def subtract():
    global integer
    integer = integer - 1
    l1.config(text=integer)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...