클래스/인스턴스를 파이썬으로 이해하는 데 협조 해주십시오. 버튼 몇 개를 만들고 버튼을 클릭 할 때 버튼의 색상을 변경하고 싶습니다. on_touch_down이 왜 터치 된 클래스가 아닌 클래스의 모든 인스턴스의 색상을 변경하는지 이해할 수 없습니다. 이름을 짓는 방법을 모르므로 답을 찾기가 어렵습니다. 물건에 대한 많은 경험이 없습니다. 이것을 설명해주십시오. 백만 달러 고맙습니다.kivy python 위젯 인스턴스 또는 모든 위젯
import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.button import Button
from kivy.uix.widget import Widget
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.textinput import TextInput
from kivy.graphics import Color, Ellipse
class MemoWidget(Button):
def on_touch_down(self, touch):
self.background_color=[100,100,1,1]
class MyApp(App):
def build(self):
root = BoxLayout(orientation='vertical',spacing=4)
m1 = MemoWidget()
m2 = MemoWidget()
m3 = MemoWidget()
root.add_widget(m1)
root.add_widget(m2)
root.add_widget(m3)
return root
if __name__ == '__main__':
MyApp().run()
Kivy는 RGBA 0-1 형식, 즉 0-255의 값을 0에서 100 %까지 사용하고 0-255의 값을 직접 사용하지 않습니다. – KeyWeeUsr
좋은 정보, 감사합니다! –