跳到主要内容

横幅 Banner

横幅显示一个重要且简洁的消息,并提供用户进行操作(或关闭横幅)的选项。需要用户的操作才能关闭横幅。

横幅显示在屏幕顶部,顶部应用栏下方。它们是持久性和非模态的,允许用户在任何时候忽略它们或与它们进行交互。

Examples

实时示例

带有前导图标和操作的横幅

import flet as ft

def main(page):
def close_banner(e):
page.banner.open = False
page.update()

page.banner = ft.Banner(
bgcolor=ft.colors.AMBER_100,
leading=ft.Icon(ft.icons.WARNING_AMBER_ROUNDED, color=ft.colors.AMBER, size=40),
content=ft.Text(
"Oops,删除文件时出现了一些错误。你希望我怎么做呢?"
),
actions=[
ft.TextButton("重试", on_click=close_banner),
ft.TextButton("忽略", on_click=close_banner),
ft.TextButton("取消", on_click=close_banner),
],
)

def show_banner_click(e):
page.banner.open = True
page.update()

page.add(ft.ElevatedButton("显示横幅", on_click=show_banner_click))

ft.app(target=main)

属性

actions

在横幅底部或末尾显示的一组操作。

通常,这是一个TextButton控件的列表。

bgcolor

此横幅表面的颜色。

content

横幅的内容。通常是一个Text控件。

content_padding

要插入内容的空间量。

如果操作位于内容下方,则默认为padding.only(left=16.0, top=24.0, right=16.0, bottom=4.0)

如果操作位于内容末尾,则默认为padding.only(left=16.0, top=2.0)

有关填充和可能的值的更多信息,请参见Container.padding

force_actions_below

强制将操作放置在内容下方的覆盖项,而不考虑操作的数量。

如果为True,则将操作放置在内容下方。如果为False,则当操作的长度为1时,将操作放置在内容末尾;当长度大于1时,将操作放置在内容下方。

默认为False

leading

横幅的(可选)前导Control

通常为Icon控件。

leading_padding

要插入前导控件的空间量。默认为16个虚拟像素。有关填充和可能的值的更多信息,请参见Container.padding

open

设置为True以显示横幅。