【发布时间】:2020-12-16 10:23:27
【问题描述】:
我有两个小部件,一个正文和一个标题。每当我单击标题时,我都想打印出“标题小部件已被按下”。问题是,如果我单击正文(或窗口中的任何位置),它还会返回“已按下 Header Widget。”
gui.py
class header(Widget):
def on_touch_down(self, touch):
print('Header Widget has been pressed')
class body(Widget):
pass
class gui(Widget):
pass
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.add_widget(body())
self.add_widget(header())
class MainApp(App):
def build(self):
Window.borderless = True
self.gui = gui()
return self.gui
if __name__ == '__main__':
MainApp().run()
Main.kv
<body>:
canvas.before:
Rectangle:
pos: 0,0
size: 249, 228 -39
source: "./assets/background.png"
<header>:
canvas.before:
Rectangle:
pos: 0, 228 -39
size: 249, 39
source: "./assets/header.png"
我确保正文不会与标题重叠。
【问题讨论】: