https://www.toutiao.com/i6930561604580950542/?group_id=6930561604580950542
Go语言学习(6)package包、main包及func函数
https://www.toutiao.com/i6930582521080185356/?group_id=6930582521080185356
Go语言学习(7)func层次结构
https://www.toutiao.com/i6930588598840508931/?group_id=6930588598840508931
Go语言学习(8) 第一个GO语言的GUI图形窗体
https://www.toutiao.com/i6931604868583080455/?group_id=6931604868583080455
接上期,今天将以walk窗体+excelize库完成一个读取excel的小demo
第1步:创建d:gopathsrctest工程目录,
第2步:使用命令go mod init test创建go.mod
第3步:复制上期制作的win.syso(其中已经包含了win.manifest和sun.ico
第4步:命令go get github.com/lxn/walk引用walk库
新建main.go文件添加代码:
package main
import (
"github.com/lxn/walk"
. "github.com/lxn/walk/declarative"
)
func main() {
var TextEdit1 *walk.TextEdit //声明2个标准win控件
var PushButton1 *walk.PushButton
MainWindow{
Title: "探索excel(GoLang版)",
Size: Size{500, 500},
Icon: "sun.ico", //添加图标到窗体标题栏
Layout: VBox{}, //纵向布局,包含PushButton1和TextEdit1
Children: []Widget{
PushButton{
Text: "一键执行",
AssignTo: &PushButton1,
OnClicked: func() {
TextEdit_click(TextEdit1)
},
},
TextEdit{AssignTo: &TextEdit1},
},
}.Run()
}
func TextEdit_click(a *walk.TextEdit) {
a.SetTextColor(walk.RGB(byte(255), byte(48), byte(48)))
a.AppendText("欢迎关注“探索3000”")
}
第5步:使用go build -ldflags="-H windowsgui"编译带图标的win窗体exe
小技巧:
在BULIDARGS自定义参数中添加-ldflags="-H windowsgui" ,可以直接使用工具栏命令
最终效果: