我找不到如何在 Flet 中加载我自己的图标。
我正在测试 Flet 的目的是制作一个桌面应用程序(纯桌面,不需要互联网),但我无法使用自己的图标开始。我只能使用 ft.icons 中的图标,但我宁愿使用自己的图标,从类似于 /assets/icons 的文件夹中加载它们。我可以这样做吗?怎么办?
谢谢。
目前,我没有找到这样做的方法;但是,您可以使用
Image
类来代替。
我建议您在主项目文件夹下创建一个资产文件夹。
假设您的项目具有以下文件夹结构:
/assets
/icons/my-icon.png
main.py
当您运行应用程序时,您应该通过以下方式将该文件夹提供给初始化程序:
flet.app(target=YourApp(), assets_dir="assets")
然后您可以直接在那里访问您的图像并通过以下方式创建一个 Image 实例:
test_image = flet.Image(src="icons/my-icon.png", width=32, height=32, tooltip="Image Tooltip")
您可以将这些图像控件嵌套在您想要的任何内容中,因此您有很大的灵活性。
这样做的唯一缺点是如果您在应用程序上使用浅色/深色主题。与
Icon
类相比,您必须自己指定浅色/深色主题版本,并在切换主题时手动更新它们。
这里是官方文档
你可以使用这样的东西
TextButton(content=Row([Image(src="img/wtsp.png", height=24, width=24), # Custom image for WhatsApp
Text("WhatsApp") # Text label for the button
]),on_click=lambda _: page.launch_url(f"https://wa.me/{phone_number}"),),