跳到主要内容

网格列表 GridView

一个可滚动的、2D数组形式的控件。

信息

对于大型列表(数千个项),GridView非常有效。与用于平滑滚动的ColumnRow包装相比,GridView更加优雅。参见Flet Icons Browser中GridView的使用示例。

示例

在线示例

照片画廊

import flet as ft

def main(page: ft.Page):
page.title = "GridView 示例"
page.theme_mode = ft.ThemeMode.DARK
page.padding = 50
page.update()

images = ft.GridView(
expand=1,
runs_count=5,
max_extent=150,
child_aspect_ratio=1.0,
spacing=5,
run_spacing=5,
)

page.add(images)

for i in range(0, 60):
images.controls.append(
ft.Image(
src=f"https://picsum.photos/150/150?{i}",
fit=ft.ImageFit.NONE,
repeat=ft.ImageRepeat.NO_REPEAT,
border_radius=ft.border_radius.all(10),
)
)
page.update()

ft.app(target=main, view=ft.AppView.WEB_BROWSER)

属性

auto_scroll

如果应该自动将滚动条位置移动到末尾,则为True。对于scroll_to()方法的正常工作,此属性必须为False

child_aspect_ratio

每个子项的辅轴到主轴长度比。

controls

要在GridView中显示的Control的列表。

horizontal

如果要水平布局GridView的项,则为True

max_extent

网格项的最大宽度或高度。

on_scroll_interval

on_scroll事件的节流时间间隔(以毫秒为单位)。默认值为10

padding

用于将子项周围的空间缩进的量。

有关更多信息和可能的值,请参见Container.padding属性。

reverse

Defines whether the scroll view scrolls in the reading direction. Defaults to False.

run_spacing

沿交叉轴的每个子项之间的逻辑像素数。

runs_count

在交叉轴中的子项数量。

spacing

沿主轴的每个子项之间的逻辑像素数。

方法

scroll_to(offset, delta, key, duration, curve)

将滚动位置移动到绝对offset、相对delta或跳转到指定key的控件。

有关方法详细信息和示例,请参见Column.scroll_to()

事件

on_scroll

当用户改变滚动位置时触发。

有关事件详细信息和示例,请参见Column.on_scroll