Untitled
unknown
plain_text
2 years ago
1.8 kB
7
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