简介
Fyne工具包是一个易于学习、免费和开源的平台,用于为桌面、移动和其他平台构建图形应用程序。将Go编程语言的强大和简单性与精心制作的小部件库相结合,现在比以往任何时候都更容易构建应用程序,并在所有平台和商店中部署它。
官网fyne.io/
Github(github.com/fyne-io/fyn…
安装
使用go install将可执行文件复制到你的go bin目录。要将带有图标的应用程序安装到操作系统的标准应用程序位置,你可以使用fyne实用程序和“install”子命令。
$ go get fyne.io/fyne/v2/cmd/fyne
$ fyne install
复制代码
helloworld
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()
}
复制代码
$ go run main.go
复制代码
你就会看到
组件列表
$ go get fyne.io/fyne/v2/cmd/fyne_demo/
$ fyne_demo
复制代码
AccordionContainer
折叠菜单
Box
Box widget是一个简单的列表,其中子元素按单列(垂直排列)或单行(水平排列)排列。
Button
按钮小部件有一个文本标签和图标,都是可选的。
Check
Check小部件有一个文本标签和一个已选中(或未选中)的图标。
Entry
Entry小部件允许在聚焦时输入简单的文本。
PasswordEntry小部件隐藏文本输入并添加一个按钮来显示文本。
Form
表单小部件是两个列网格,其中每行有一个标签和一个小部件(通常是一个输入)。网格的最后一行将包含适当的表单控件按钮(如果需要显示的话)。
Group
Group widget是一组小部件,其中包含一个视觉分隔符,用于指示顶部有标题的组。
Hyperlink
Hyperlink小部件是一个具有适当填充和布局的文本组件。当单击时,URL将在默认的web浏览器中打开。
Icon
图标小部件是一个基本的图像组件,它加载其资源以匹配主题。
Label
Label小部件是一个具有适当填充和布局的标签组件。
Progress bar
ProgressBar小部件创建一个指示进度的水平面板。
Radio
单选小部件的旁边有一个文本标签列表和单选检查图标。
ScrollContainer
ScrollContainer定义了一个比内容小的容器。
Select
Select widget有一个选项列表,其中显示当前选项,并在单击时触发一个事件函数。
SelectEntry
Select entry小部件向Select小部件添加一个可编辑组件。用户可以选择一个选项或输入自己的值。
Slider
滑动条表示小部件可以在两个固定值之间滑动。
SplitContainer
SplitContainer定义了一个容器,其大小在两个子容器之间分割。
TabContainer
TabContainer小部件允许从列表中切换可见内容。每个项目都由小部件顶部的一个按钮表示。
TextGrid
TextGrid是一个等宽的字符网格。这是设计用于文本编辑器,代码预览或终端模拟器。
Toolbar
工具栏小部件创建工具按钮的水平列表。
布局
Horizontal Box (HBox)
Vertical Box (VBox)
Center
中心布局将所有容器元素放置在容器的中心。每个对象将被设置为它的最小大小。
Grid
网格布局在可用空间中均匀地排列项目。指定若干列后,对象将被水平定位,直到达到列数时才开始新行。所有对象具有相同的大小,即宽度除以列总数,高度为总高度除以所需的行数。-填充。
GridWrap
GridWrap布局将所有项按行排列,如果空间不足,则换行到新行。所有对象将被设置为相同的大小,也就是传递给布局的大小。此布局可能不尊重项目MinSize来管理此统一布局。常用于文件管理器或图像缩略图列表。
Border
边框布局支持将项目定位在可用空间之外。边框被传递给对象(上、左、下、右)的指针。容器中没有放置在边框上的所有项目将填满剩余的空间。
Max
最大布局位置所有容器元素,以填补可用空间。所有的对象都是全尺寸的,并按照它们被添加到容器中的顺序绘制(最后一个在顶部)。
近期评论