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

如何在Flet(v0.22.*)中等待确认对话框并根据选择执行操作

Flet 0.22.* 实现按钮点击弹出确认对话框并执行对应逻辑

核心实现方式

在Flet 0.22.*版本中,可通过page.show_confirm_dialog()方法唤起确认对话框,该方法会返回用户的选择结果(True对应“确认”,False对应“取消”),以此为分支执行不同逻辑。

完整代码示例

import flet as ft

def main(page: ft.Page):
    page.title = "确认对话框演示"

    def handle_button_click(e):
        # 弹出确认对话框
        user_choice = page.show_confirm_dialog(
            ft.AlertDialog(
                title=ft.Text("确认操作"),
                content=ft.Text("确定要执行此操作吗?"),
                actions=[
                    ft.TextButton("取消", on_click=lambda e: page.close_dialog(False)),
                    ft.TextButton("确认", on_click=lambda e: page.close_dialog(True)),
                ],
                actions_alignment=ft.MainAxisAlignment.END,
            )
        )

        # 根据选择执行对应逻辑
        if user_choice:
            # 替换为你的确认后业务逻辑
            page.add(ft.Text("操作已执行", color=ft.colors.GREEN_700))
        else:
            # 替换为你的取消后业务逻辑
            page.add(ft.Text("操作已取消", color=ft.colors.RED_700))

    page.add(ft.ElevatedButton("触发操作", on_click=handle_button_click))

if __name__ == "__main__":
    ft.app(target=main)

关键细节说明

  • page.show_confirm_dialog()会暂停后续代码执行,直到用户关闭对话框,返回用户的选择值。
  • 对话框的操作按钮通过AlertDialog的actions参数定义,使用page.close_dialog(值)传递用户选择。
  • 可直接根据返回的布尔值分支编写业务逻辑,无需额外状态判断。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 21:18:17