Skip to main content

flet extension library

Project description

fleter

PyPI - Python Version PyPI - Downloads PyPI - Downloads PyPI - Downloads PyPI - Wheel PyPI - Format PyPI - License

flet的扩展组件库,提供一些常用组件及功能。

2.0版本起我们将不支持flet<0.4.0的版本

3.0版本起我们将不支持flet<0.5.2的版本

ComboBox

用于简化Dropdown的开发过程,option可以使用列表设置,如["Hello", "World"]

import flet
import fleter


def build(page: flet.Page):
    item = []
    for index in range(20):
        item.append(f"item{index}")
    page.add(fleter.ComboBox(options=item))
    page.update()

flet.app(target=build)

设置选项的状态

很简单,我们只要将选项设置为元组或列表即可。如($name, $disabled)即可

import flet
import fleter


def build(page: flet.Page):
    item = [
        "normal",  # 默认状态
        ("disabled", True),  # 失效状态
        ("active", False),  # 激活状态
    ]
    page.add(fleter.ComboBox(options=item))
    page.update()

flet.app(target=build)

Editor

文本编辑器。

import flet
import fleter


def build(page: flet.Page):
    editor = fleter.Editor()
    
    page.add(editor)
    page.add(fleter.ComboBox(options=item))
    page.update()

flet.app(target=build)

HeaderBar

用于快速设置窗口标题栏。

常规

import flet
import fleter


def build(page: flet.Page):
    titlebar = fleter.HeaderBar(page, title="Hello World")
    page.add(
        titlebar
    )
    page.update()

flet.app(target=build)

标题栏靠左-切换主题按钮

import flet
import fleter


def build(page: flet.Page):
    titlebar = fleter.HeaderBar(page, title="Hello World", title_align="left")
    titlebar.controls.insert(1, fleter.SwichThemeButton(page))
    page.add(
        titlebar
    )
    page.update()

flet.app(target=build)

获取标题栏里面的关闭按钮

可以在组件中找到close_button的属性,并对其进行设置。(前提是设置has_close属性为True

import flet
import fleter


def build(page: flet.Page):
    titlebar = fleter.HeaderBar(page)
    print(titlebar.close_button)
    page.add(
        titlebar
    )
    page.update()

flet.app(target=build)

设置是否有关闭按钮

我们知道HeaderBar初始化时有个has_close的属性,如果需要在后面设置是否有关闭按钮时,就可以调用has_close属性进行设置

import flet
import fleter


def build(page: flet.Page):
    titlebar = fleter.HeaderBar(page)
    titlebar.close_button = False  # True保留关闭按钮,False不保留关闭按钮
    page.add(
        titlebar
    )
    page.update()

flet.app(target=build)

NoteBook

用于快速制作选项卡。

常规

import flet
import fleter

def main(page: flet.Page):
    notebook = fleter.NoteBook()
    for item in range(10):
        notebook.add(notebook.create(f"Item {item+1}", flet.Text(value=f"I`m item {item + 1}")))
    page.add(
        notebook
    )
    page.update()

flet.app(target=main)

选项可关闭

import flet
import fleter

def main(page: flet.Page):
    notebook = fleter.NoteBook()
    for item in range(10):
        notebook.add(notebook.create_with_can_close(f"Item {item+1}", flet.Text(value=f"I`m item {item + 1}")))
    page.add(
        notebook
    )
    page.update()

flet.app(target=main)

选项卡关闭提示

import flet
import fleter

def main(page: flet.Page):
    notebook = fleter.NoteBook()
    for item in range(10):
        notebook.add(notebook.create_with_can_close(f"Item {item+1}", flet.Text(value=f"I`m item {item + 1}"), close_tip=True))
    page.add(
        notebook
    )
    page.update()

flet.app(target=main)

SwichThemeButton

用于快速切换窗口主题的图标按钮组件。

常规

import flet
import fleter

def main(page: flet.Page):
    swich_theme_button = fleter.SwitchThemeButton(page)
    page.add(
        swich_theme_button
    )
    page.update()

flet.app(target=main)

无系统主题选项

import flet
import fleter

def main(page: flet.Page):
    swich_theme_button = fleter.SwichThemeButton(page, has_system=False)
    page.add(
        swich_theme_button
    )
    page.update()

flet.app(target=main)

SwitchThemePopupMenuItem

用于快速切换窗口主题的图标弹窗菜单组件。

常规

import flet
import fleter

def main(page: flet.Page):
    page.add(
        flet.PopupMenuButton(
            items=[
                fleter.SwitchThemePopupMenuItem(page)
            ]
        )
    )
    page.update()

flet.app(target=main)

SpinBox

进步器,用于调整整数或浮点数的数值

import flet
import fleter

def main(page: flet.Page):
    page.add(
        fleter.SpinBox()
    )
    page.update()

flet.app(target=main)

浮点数步进器

import flet
import fleter

def main(page: flet.Page):
    page.add(
        fleter.SpinBox(plus=0.1, minus=0.1)
    )
    page.update()

flet.app(target=main)

最大值与最小值

设置步进器可设置的最大值。

import flet
import fleter

def main(page: flet.Page):
    page.add(
        fleter.SphinBox(max_value=5, min_value=-5)
    )
    page.update()

flet.app(target=main)

Time

使用threading库做出来的记时工具。

import flet
import fleter

def main(page: flet.Page):

    def tick(id, tick_time):
        print(f"{id} {tick_time}")

    time = fleter.Time(tick)
    time.start("time", 10)

    page.update()

flet.app(target=main)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fleter-0.3.0.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

fleter-0.3.0-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file fleter-0.3.0.tar.gz.

File metadata

  • Download URL: fleter-0.3.0.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for fleter-0.3.0.tar.gz
Algorithm Hash digest
SHA256 e543c33a1902830bcfee31b1e3ec999a3f2d45d58350983e09b3518350ff2621
MD5 de52d291befaf9b81a9a1c7586e04f21
BLAKE2b-256 0ce0a8dcf96096628157c63980f1e40d0916b60184f88706bd3d66c0dece4f80

See more details on using hashes here.

File details

Details for the file fleter-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: fleter-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for fleter-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 64dcc3108f88626bd4d375f1f64db8031b0fcd4831b94416fc651a0ae5b3f054
MD5 4240881e01aba05addf11f0edec567df
BLAKE2b-256 89bbd16318e95f4cc00f3476783953ef4c8833ee27f034985c50f4d4f6a497b1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page