导言:andlabs/ui GUI库支持在所有桌面系统平台开发GUI程序
开发文档:https://godoc.org/github.com/andlabs/ui
1. 开发前提
-
Go:
1.8 以上的版本
-
Windows:
Windows Vista SP2 以上的 Windows 系统
-
Mac OS X:
Mac OS X 10.8 以上的 Mac 系统
-
其他操作系统:
GTK+3.10 以上
-
Debian、Ubuntu 等:
sudo apt-get install libgtk-3-dev
-
Red Hat / Fedora 等:
sudo dnf install gtk3-devel
-
Debian、Ubuntu 等:
2. 安装
go get github.com/andlabs/libui
go get github.com/andlabs/ui
3. 使用
package main
import (
"github.com/andlabs/ui"
_ "github.com/andlabs/ui/winmanifest"
)
func main() {
err := ui.Main(func() {
// 生成:文本框
name := ui.NewEntry()
// 生成:标签
greeting := ui.NewLabel(``)
// 生成:按钮
button := ui.NewButton(`欢迎`)
// 设置:按钮点击事件
button.OnClicked(func(*ui.Button) {
greeting.SetText(`你好,` + name.Text() + `!`)
})
// 生成:垂直容器
box := ui.NewVerticalBox()
// 往 垂直容器 中添加 控件
box.Append(ui.NewLabel(`请输入你的名字:`), false)
box.Append(name, false)
box.Append(button, false)
box.Append(greeting, false)
// 生成:窗口(标题,宽度,高度,是否有 菜单 控件)
window := ui.NewWindow(`你好`, 200, 100, false)
// 窗口容器绑定
window.SetChild(box)
// 设置:窗口关闭时
window.OnClosing(func(*ui.Window) bool {
// 窗体关闭
ui.Quit()
return true
})
// 窗体显示
window.Show()
})
if err != nil {
panic(err)
}
}
网友评论