美文网首页📙Go语言:进阶大全Go
Go语言:开发GUI桌面应用(andlabs/ui)

Go语言:开发GUI桌面应用(andlabs/ui)

作者: 白祤星 | 来源:发表于2019-03-20 17:51 被阅读3252次

    导言:andlabs/ui GUI库支持在所有桌面系统平台开发GUI程序
    开发文档:https://godoc.org/github.com/andlabs/ui

    1. 开发前提


    • Go1.8 以上的版本
    • WindowsWindows Vista SP2 以上的 Windows 系统
    • Mac OS XMac 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

    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)
        }
    }
    

    相关文章

      网友评论

        本文标题:Go语言:开发GUI桌面应用(andlabs/ui)

        本文链接:https://www.haomeiwen.com/subject/xyptvqtx.html