Untitled
unknown
plain_text
2 years ago
1.8 kB
10
Indexable
from kivy.app import App
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.gridlayout import GridLayout
def dodle():
pass
class Btn(Button):
def __init__(self, funks, **kwargs):
super().__init__(**kwargs)
self.funks = funks
self.turnOn = False
self.background_color = [1, 0, 0, 1]
def on_press(self):
for one_funk in self.funks:
one_funk()
self.switch()
def switch(self):
if self.turnOn:
self.background_color = [1, 0, 0, 1]
else:
self.background_color = [0, 1, 0, 1]
self.turnOn = not self.turnOn
class PuzzleScreen(Screen):
def __init__(self, **kwargs):
super().__init__(**kwargs)
gl = GridLayout(cols=2, spacing=8, padding=8)
self.bt1 = Btn(text="1", funks=[])
self.bt2 = Btn(text="2", funks=[self.bt1.switch])
self.bt3 = Btn(text="3", funks=[self.bt2.switch])
self.bt4 = Btn(text="4", funks=[self.bt3.switch])
self.bt5 = Btn(text="5", funks=[self.bt1.switch])
self.bt6 = Btn(text="6", funks=[self.bt2.switch])
self.bt1.funks.append(self.bt5.switch)
self.bt2.funks.append(self.bt6.switch)
self.bt4.funks.append(self.bt6.switch)
gl.add_widget(self.bt1)
gl.add_widget(self.bt2)
gl.add_widget(self.bt3)
gl.add_widget(self.bt4)
gl.add_widget(self.bt5)
gl.add_widget(self.bt6)
self.add_widget(gl)
class MyApp(App):
def build(self):
sm = ScreenManager()
sm.add_widget(PuzzleScreen())
return sm
MyApp().run()Editor is loading...
Leave a Comment