五张图了解golang GUI编程
代码整理
package main
import "os"
//import "os/exec"
//import "fmt"
import "github.com/mattn/go-gtk/gtk"
import "github.com/mattn/go-gtk/glib"
func Handl(ctx *glib.CallbackContext) {
//fmt.Println("hhhhhhhh")
}
func main() {
//初始化
gtk.Init(&os.Args)
builder := gtk.NewBuilder()
builder.AddFromFile("./test.glade")
win := gtk.WindowFromObject(builder.GetObject("window"))
win.Show()
//用户写的代码
win := gtk.NewWindow(gtk.WINDOW_TOPLEVEL)
win.SetTitle("GO GTK")
win.SetSizeRequest(420, 380)
layout := gtk.NewFixed()
win.Add(layout)
win.SetIconFromFile("./并行并发.png")
b := gtk.NewButtonWithLabel("*_*")
b.SetSizeRequest(100, 100)
layout.Put(b, 0, 100)
b.Connect("clicked", Handl, "gggg")
win.ShowAll()
win.SetDefaultSize(100, 100)
win.Connect("destroy", func() {
//fmt.Println("+++++")
gtk.MainQuit()
})
//主事件循环
gtk.Main()
//fmt.Println("关闭了呢")
}
package main
import (
"fmt"
"os"
"github.com/mattn/go-gtk/glib"
"github.com/mattn/go-gtk/gtk"
)
func main() {
//1.初始化
gtk.Init(&os.Args) //固定初始化准备的环境
//2.用户写的代码
//a.创建窗口
//b.设置窗口属性(标题,大小)
//c.显示窗口
win := gtk.NewWindow(gtk.WINDOW_TOPLEVEL) //带边框的顶层窗口
win.SetTitle("go gtk") //设置标题
win.SetSizeRequest(480, 320) //设置窗口大小
//显示
//创建容器控件(固定