跳到主要内容

透明指针 TransparentPointer

“透明指针是解决“如何在 Stack 中的两个小部件之间传递所有手势”问题的方法。

例如,如果在container内有一个elevatedbutton 带有手势检测器,那么在按钮上的点击对于其后面的手势检测器将是“不可见”的。使用TransparentPointer,点击事件不会在按钮上停止,而是向上传递到父级,类似于 HTML/JS 中的事件冒泡。”

示例

import flet as ft

def main(page):
page.add(
ft.Stack(
[
ft.GestureDetector(
on_tap=lambda _: print("TAP!"),
multi_tap_touches=3,
on_multi_tap=lambda e: print(
"MULTI TAP:", e.correct_touches
),
on_multi_long_press=lambda _: print("Multi tap long press"),
),
ft.TransparentPointer(ft.Container(
ft.ElevatedButton("测试按钮"),
padding=50
)),
],
expand=True,
)
)

ft.app(target=main)

属性

content

要在 TransparentPointer 内部显示的控件。