前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Fyne:一个简单易用的Go语言UI工具包

Fyne:一个简单易用的Go语言UI工具包

作者头像
运维开发王义杰
发布2023-08-10 16:30:20
9010
发布2023-08-10 16:30:20
举报

github.com/fyne-io/fyne是一个免费且开源的跨平台UI工具包,用于在桌面和移动平台上创建图形用户界面(GUI)。它使用OpenGL提供跨平台图形,并受到Material Design原则的启发,以创建在所有平台上外观和行为一致的应用程序。

Fyne旨在成为开发美观且易用的原生图形应用程序的最佳工具包。构建跨平台图形应用程序复杂且难以学习。所涉及的技术较旧,因此带有遗留设计选择。

Fyne结合了Go编程语言的强大性和简单性,以及精心设计的小部件库,使您能够比以往任何时候都更容易地构建应用程序并将其部署到所有平台和商店。它还提供了fyne命令来打包静态资源和应用程序。

Fyne具有简洁易学的API、Material Design的清晰外观和清晰的文档,支持新一代跨平台应用程序开发。使用Fyne构建的应用程序数量不断增长,其中许多也是开源的。

代码语言:javascript
复制
package main

import (
  "fyne.io/fyne/v2/app"
  "fyne.io/fyne/v2/container"
  "fyne.io/fyne/v2/widget"
)

func main() {
  a := app.New()
  w := a.NewWindow("Hello")

  hello := widget.NewLabel("Hello Fyne!")
  w.SetContent(container.NewVBox(
    hello,
    widget.NewButton("Hi!", func() {
      hello.SetText("Welcome :)")
    }),
  ))

  w.ShowAndRun()
}

有许多使用Fyne工具包构建的应用程序示例。一个可以找到例子的地方是GitHub上的Fyne examples存储库fyne-io/examples: Examples apps using the Fyne toolkit (github.com)。此存储库包含使用Fyne工具包的示例应用程序集合。我们可以通过运行go-run来启动链接到所有其他应用程序的主要示例应用程序。所有这些示例都是完全可扩展的,并且许多示例也响应当前主题。此存储库中包含的一些基于小部件的示例包括:

Calculator: 已移动到计算器存储库

Bugs game (like MineSweeper):狩猎方块,揭示除了bug之外的一切!XKCD:具有随机和查找功能的XKCD漫画浏览器。

还有一些基于图形的示例使用Fyne画布API绘制基本形状、文本和图像来创建自定义用户界面。其中一些例子是:

时钟:一个简单的模拟时钟,匹配当前的主题。

分形:可以平移和缩放的分形查看器

纸牌:移动到纸牌存储库

生命:移动到生命存储库

希望这能让你很好地了解使用Fyne工具包可以构建什么!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-06-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维开发王义杰 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档