You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flet GUI中列表项无法滚动求助(已设置ft.ScrollMode.AUTO)

解决Flet中Column滚轮滚动无效的问题

你的代码存在两个关键问题导致滚动功能不生效:

  • 参数传递错误:Column的scroll参数需要以关键字参数形式传递,你直接将ft.ScrollMode.AUTO放在位置参数的位置,无法被识别为滚动模式配置。
  • 缺少高度约束:Column在无高度限制时会自动拉伸以适配所有内容,不会触发滚动逻辑。需要让它占满Tab的可用空间,或者设置固定高度。

修正后的代码如下:

import flet as ft

def main(page: ft.Page):
    checkboxes_tab = ft.Tab(
        text="Checkboxes",
        content=ft.Column(
            [
                ft.Checkbox(label='item1', value=True),
                ft.Checkbox(label='item2', value=True),
                ft.Checkbox(label='item3', value=True),
                ft.Checkbox(label='item4', value=True),
                ft.Checkbox(label='item5', value=True),
                ft.Checkbox(label='item6', value=True),
                ft.Checkbox(label='item7', value=True),
                ft.Checkbox(label='item8', value=True),
                ft.Checkbox(label='item9', value=True),
                ft.Checkbox(label='item10', value=True),
                ft.Checkbox(label='item11', value=True),
                ft.Checkbox(label='item12', value=True),
                ft.Checkbox(label='item13', value=True),
                ft.Checkbox(label='item14', value=True),
                ft.Checkbox(label='item15', value=True),
                ft.Checkbox(label='item16', value=True),
                ft.Checkbox(label='item17', value=True),
            ],
            scroll=ft.ScrollMode.AUTO,  # 改为关键字参数传递
            expand=True  # 让Column占满Tab可用空间,触发滚动
        )
    )
    tabs = ft.Tabs(
        selected_index=0,
        tabs=[checkboxes_tab]
    )

    page.add(tabs)

ft.app(target=main)

修改说明:

  1. 将ft.ScrollMode.AUTO调整为scroll=ft.ScrollMode.AUTO,确保参数被正确识别为滚动模式设置。
  2. 添加expand=True,让Column自动填充Tab的全部可用高度,当内容超出高度时会自动触发滚动。如果需要固定高度,也可以替换为height=400这类具体数值,效果一致。

内容的提问来源于stack exchange,提问作者kvn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 22:02:50