InteractiveViewer
交互式查看器:允许用户平移、缩放和旋转所提供的“内容”。
示例
基本示例
import flet as ft
def main(page: ft.Page):
page.add(
ft.InteractiveViewer(
min_scale=0.1,
max_scale=15,
boundary_margin=ft.margin.all(20),
on_interaction_start=lambda e: print(e),
on_interaction_end=lambda e: print(e),
on_interaction_update=lambda e: print(e),
content=ft.Image(
src="https://picsum.photos/500/500",
),
)
)
ft.app(main)
属性
alignment
内部“内容”的对齐方式。
值的类型为 Alignment
。
bgcolor
背景颜色。
boundary_margin
“内容”可见边界的边距。
值的类型为 Margin
。
clip_behavior
如何裁剪“内容”。
值的类型为 ClipBehavior
,默认为 ClipBehavior.HARD_EDGE
。
constrained
在小部件树的此点处,是否将正常大小约束应用于子项。
content
要由 InteractiveViewer
转换的 Control
。
interaction_end_friction_coefficient
更改手势后的减速行为。
值的类型为 float
,默认为 0.0000135
。
max_scale
允许的最大缩放比例。
值的类型为 float
,默认为 2.5
。
min_scale
允许的最小缩放比例。
值的类型为 float
,默认为 0.8
。
pan_enabled
是否启用平移。
值的类型为 bool
,默认为 True
。
scale_enabled
是否启用缩放。
值的类型为 bool
,默认为 True
。
scale_factor
每次指针滚动执行的缩放量。
值的 类型为 float
,默认为 200.0
。
trackpad_scroll_causes_scale
在触控板上向上/向下滚动是否应导致缩放而不是平移。
值的类型为 bool
,默认为 False
。
事件
on_interaction_end
当用户结束平移或缩放手势时触发。
事件处理程序参数的类型为 InteractiveViewerInteractionEndEvent
。
on_interaction_start
当用户开始平移或缩放手势时触发。
事件处理程序参数的类型为 InteractiveViewerInteractionStartEvent
。
on_interaction_update
当用户更新平移或缩放手势时触发。
事件处理程序参数的类型为 InteractiveViewerInteractionUpdateEvent
。