详解goLang怎么开发windows窗口界面
时间:2021-07-26 15:17
今天找了一下。找到了一个 walk的一个东西。不用说下get一下这个pack下了再说 get下来后 访问了一下github 页面看了一下作者的说明 Walk是一个写给Golang的Window应用程序库套件,它主要用于桌面GUI的开发,但也有更多的东西。 还有个 例子。 这个肯定要自己试试玩玩啊。写完代码 buIid一下 生成了一个 test.exe的文件。打开了一下。居然一点反应都没有。又仔细看了一下。原来我忽略了一个东西 还需要一个 rsrc的一个pack get下来后 访问了一下github 页面看了一下作者的说明 用于在程序中嵌入二进制资源的工具 这个怎么玩呢。 运行一下 go install 然后运行 rsrc 命令。不好用。估计go bin 下面没有这个 rsrc.exe 没办法手动build copy 过去把 ok install 完成了。下面怎么玩呢。继续看作者怎么写的 他需要创建一个test.manifest 的文件 里面写入 然后运行 rsrc -manifest test.manifest -o rsrc.syso 然后再运行刚刚的那个 双击 test.exe 。ok运行成功了 更多golang相关技术文章,请访问golang教程栏目! 以上就是详解goLang怎么开发windows窗口界面的详细内容,更多请关注gxlsystem.com其它相关文章!go get github.com/lxn/walk
package main
import (
"strings"
"github.com/lxn/walk"
. "github.com/lxn/walk/declarative"
)
func main() {
var inTE, outTE *walk.TextEdit
MainWindow{
Title: "xiaochuan测试",
MinSize: Size{600, 400},
Layout: VBox{},
Children: []Widget{
HSplitter{
Children: []Widget{
TextEdit{AssignTo: &inTE, MaxLength: 10},
TextEdit{AssignTo: &outTE, ReadOnly: true},
},
},
PushButton{
Text: "SCREAM",
OnClicked: func() {
outTE.SetText(strings.ToUpper(inTE.Text()))
},
},
},
}.Run()
}
go build -ldflags="-H windowsgui"
go get github.com/akavel/rsrc
cd %GOPATH%/src/github.com/akavel/rsrc
go build
可以看到这个rsrc目录下面生成了一个 rsrc.exe 肯定就是 这个鬼.copy 到 GOROOT/bin 下面 。运行一下<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="*" name="SomeFunkyNameHere" type="win32"/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
</assembly>
go build -ldflags="-H windowsgui"