@Qwertycf
ПРогер

Поможете доработать код на Python?

from kivy.app import App
from kivy.uix.button import Button
from kivy.config import Config
from random import random

Config.set('graphics', 'resizable', '0');
Config.set('graphics', 'width', '800');
Config.set('graphics', 'height', '400');

x = 1

class MyApp(App):
    def build(self):
        self.button = Button(
            text = 'Your score: ' + str(x),
            on_press = self.MainEvent,
            font_size = 40,
            background_color = [1, 1, 1, 1])
        return self.button

    def MainEvent(self, instance):
        self.button.text = self.button.text
        self.button.background_color = [
        random(),
        random(),
        random(),
        random()
        ]
        global x
        x += 1

MyApp().run()


Сделал данный исходный код, приложение кликер, но когда я запускаю то цифра вашего счета, а это переменная х, остается равной 1, и не выполняется команда х += 1.
  • Вопрос задан
  • 229 просмотров
Пригласить эксперта
Ответы на вопрос 2
@pcdesign
Поробуйте добавить __init__ в class MyApp(App):
def __init__(self):
    self.x = 1


А потом просто вот так, без всяких global
self.x += 1
Ответ написан
Комментировать
@abbrakadabbra
Зачем global в классе? Можно объявить его внутри конструктора __init__.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы