示例一:创建一个简单的窗口,包含文本和按钮

import flet as ft

def main(page: ft.Page):
    # 设置页面标题
    page.title = "Flet示例"

    # 创建一个文本控件
    text = ft.Text(value="欢迎使用Flet!", size=20)

    # 创建一个按钮控件
    button = ft.ElevatedButton(text="点击我", on_click=lambda _: text.value = "你点击了按钮!")

    # 将文本和按钮添加到页面
    page.add(text)
    page.add(button)

(target=main)


在这个示例中:


  1. 首先导入了 flet 库,并定义了 main 函数,它接收一个 ft.Page 类型的参数,这个参数代表了整个应用的页面。
  2. 通过设置 page.title 定义了页面的标题。
  3. 接着分别创建了一个 Text 文本控件和一个 ElevatedButton 按钮控件,按钮的点击事件绑定了一个匿名函数,当点击按钮时会修改文本控件的显示内容。
  4. 最后将文本和按钮添加到页面上,并通过  启动应用,传入 main 函数作为目标执行函数。


示例二:计数器应用

import flet as ft

def main(page: ft.Page):
    page.title = "计数器示例"
    # 初始化计数器的值
    count = ft.Text(value="0", size=30)

    def increment(_):
        count.value = str(int(count.value) + 1)
        page.update()

    button = ft.ElevatedButton(text="加一", on_click=increment)
    page.add(count)
    page.add(button)

(target=main)


在此示例里:


  1. 同样先定义了 main 函数处理页面相关操作。
  2. 创建了一个用于显示计数数值的 Text 控件,初始值设为 0
  3. 定义了 increment 函数,用于处理按钮点击时计数器数值增加的逻辑,每次点击按钮会将文本控件中显示的数值加 1,并通过 page.update() 来更新页面,使界面显示最新的数值。
  4. 创建按钮并绑定 increment 函数作为点击事件处理,最后将计数器文本和按钮添加到页面启动应用。


示例三:文本输入与显示


import flet as ft

def main(page: ft.Page):
    page.title = "文本输入显示示例"
    input_text = ft.TextField(label="请输入内容", on_change=lambda e: output_text.value = e.data)
    output_text = ft.Text()
    page.add(input_text)
    page.add(output_text)

(target=main)


这个示例实现的功能是:


  1. 在 main 函数中,先创建了一个 TextField 文本输入框控件,并且绑定了 on_change 事件,当输入框中的内容发生变化时,会将变化后的数据设置为另一个 Text 文本控件的显示内容。
  2. 创建了用于显示输入内容的 Text 文本控件 output_text
  3. 将文本输入框和用于显示的文本控件依次添加到页面上,运行应用后,在输入框输入内容时,下方的文本控件会实时显示输入的内容。