Flet, 用 Python 写 flutter, 一个 electron 的代替品

2022-07-17 15:48:24 +08:00
 hxse

https://github.com/flet-dev/flet

import flet
from flet import IconButton, Page, Row, TextField, icons

def main(page: Page):
    page.title = "Flet counter example"
    page.vertical_alignment = "center"

    txt_number = TextField(value="0", text_align="right", width=100)

    def minus_click(e):
        txt_number.value = int(txt_number.value) - 1
        page.update()

    def plus_click(e):
        txt_number.value = int(txt_number.value) + 1
        page.update()

    page.add(
        Row(
            [
                IconButton(icons.REMOVE, on_click=minus_click),
                txt_number,
                IconButton(icons.ADD, on_click=plus_click),
            ],
            alignment="center",
        )
    )

flet.app(target=main)

大家觉得怎么样

2428 次点击
所在节点    Python
4 条回复
ChrisFreeMan
2022-07-17 18:24:40 +08:00
听起来很梦幻,但是我之前被 python Gui 开发坑怕了。
catsoul
2022-07-18 09:02:54 +08:00
可以,不过打算再观望一下,毕竟这种类型的东东层出不穷但是真正维护到具有实用价值的寥寥
lolizeppelin
2022-07-19 14:50:52 +08:00
flutter 学习麻烦在于熟悉 flutter 本身的控件,用 python 来写控件还不是得熟悉 flutter 的控件?
就好比用 python 来写 Spring Boot,你要熟悉的是 Spring Boot 而不光是 java 。

dart 的语法又不多,dart 本身也不难,还是原生协程,转用 python 写毫无意义。
mayli
2022-07-26 02:35:32 +08:00
@lolizeppelin 确实,混合语言都有调用问题,写来写去如果不是语法上完美支持,都会遇到所谓的坑。不过 py->flutter->web 挺梦幻的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/866792

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX