go的gui----walk的使用
2016-08-09 14:37
295 查看
go虽然是服务端语言,但是使用go也可以用于实现客户端,这里使用walk来实现。
walk的git地址:https://github.com/lxn/walk
walk的说明文档:https://godoc.org/github.com/lxn/walk
go的git上面给出了实现一个简单的gui的例子。这里需要注意几点:
1、使用go get会将项目下载到GOPATH下,这里GOPATH不能跟GOROOT一样,但是可以再GOROOT下创建一个work文件夹,然后GOPATH定位到这个文件夹。应该注意,GOPATH是环境变量,而不是工作空间,我们的工作空间同样需要配置到GOPATH的,但是需要注意,使用go get获取的东西会放在GOPATH的第一个路径下,这点容易混淆,需要注意。同时需要注意的是,pycharm对于环境变量可能需要重启电脑才能侦测到,同时需要手动添加项目路径到Go Library->Global Libray下,注意不是工作目录,而是项目路径。
2、go build后面如果跟的是单个go文件名,那么就编译单个文件为exe文件,同时exe名字是这个go文件的名字。如果go build -o name.exe那么就可以修改输入的exe文件为name.exe。使用go build -ldflags=“-H windowsgui”可以让exe运行中不弹出cmd窗口。同时注意,编译的时候不要指定单个文件go build,因为main包下即使没有其他go文件,但是还是需要引入其他文件的。
3、rsrc.syso文件需要跟manifest在一个目录下。否则exe运行不出gui。
4、运行命令go get github.com/akavel/rsrc才可以加载编译gui需要的编译器rsrc.exe,运行这个命令之后GOPATH下回多出一个bin文件夹,bin文件夹下回有一个rsrc.exe。这样GOPATH路径下就有了src,pkg,bin文件夹了。
5、编译命令rsrc -manifest xxx.manifest -o rsrc.syso中,rsrc就是指rsrc.exe,所以如果没有配置到环境变量中,可以使用路径指定,而xxx.manifest是项目下需要我们自己创建的manifest文件,-o rsrc.syso是输出文件。这里由于编译需要定位到main包下,所以最后的rsrc.syso会出现在main包下。
这里对于一个界面的创建,都是在一个MainWindow下的,使用键值对方式部署,使用Run()方法运行。布局是Layout元素,子控件是Children
未完成
walk的git地址:https://github.com/lxn/walk
walk的说明文档:https://godoc.org/github.com/lxn/walk
go的git上面给出了实现一个简单的gui的例子。这里需要注意几点:
1、使用go get会将项目下载到GOPATH下,这里GOPATH不能跟GOROOT一样,但是可以再GOROOT下创建一个work文件夹,然后GOPATH定位到这个文件夹。应该注意,GOPATH是环境变量,而不是工作空间,我们的工作空间同样需要配置到GOPATH的,但是需要注意,使用go get获取的东西会放在GOPATH的第一个路径下,这点容易混淆,需要注意。同时需要注意的是,pycharm对于环境变量可能需要重启电脑才能侦测到,同时需要手动添加项目路径到Go Library->Global Libray下,注意不是工作目录,而是项目路径。
2、go build后面如果跟的是单个go文件名,那么就编译单个文件为exe文件,同时exe名字是这个go文件的名字。如果go build -o name.exe那么就可以修改输入的exe文件为name.exe。使用go build -ldflags=“-H windowsgui”可以让exe运行中不弹出cmd窗口。同时注意,编译的时候不要指定单个文件go build,因为main包下即使没有其他go文件,但是还是需要引入其他文件的。
3、rsrc.syso文件需要跟manifest在一个目录下。否则exe运行不出gui。
4、运行命令go get github.com/akavel/rsrc才可以加载编译gui需要的编译器rsrc.exe,运行这个命令之后GOPATH下回多出一个bin文件夹,bin文件夹下回有一个rsrc.exe。这样GOPATH路径下就有了src,pkg,bin文件夹了。
5、编译命令rsrc -manifest xxx.manifest -o rsrc.syso中,rsrc就是指rsrc.exe,所以如果没有配置到环境变量中,可以使用路径指定,而xxx.manifest是项目下需要我们自己创建的manifest文件,-o rsrc.syso是输出文件。这里由于编译需要定位到main包下,所以最后的rsrc.syso会出现在main包下。
这里对于一个界面的创建,都是在一个MainWindow下的,使用键值对方式部署,使用Run()方法运行。布局是Layout元素,子控件是Children
未完成
相关文章推荐
- Go实战--使用golang开发Windows Gui桌面程序(lxn/walk)
- 关于go的gui-->walk的使用及我碰到的问题
- Go语言GUI Demo 之 Walk
- Golang使用lxn/walk做GUI界面开发:邮件群发器
- 使用GO开发桌面GUI程序
- Go与GUI——GO语言的图形界面Walk
- Go 在 Windows 上用户图形界面 GUI 解决方案 Go-WinGUI 国产(使用cef 内核)
- 在 Eclipse Workbench 之外使用 Eclipse GUI,第 3 部分: 添加操作、菜单和工具栏
- [原创]IrrLicht的GUI使用
- C++ GUI编程---使用SmartWin++
- 使用Pyqt在Linux下开发GUI桌面应用
- 第七章:使用Kjava GUI组件的开发
- delegate的妙用-------------eclipse plugin 开发,使用自定义eclipse UI组件以及application GUI的开发
- 多页面间使用history.go(-n)
- C++ GUI编程---使用SmartWin++
- 使用'SAPGUI_SET_PROPERTY'函数是GUI屏幕可见和不可见
- 使用'SAPGUI_SET_PROPERTY'函数是GUI屏幕可见和不可见
- 用Eclipse集成GT3开发网格服务--使用SWT开发GUI界面
- [ZT] 如何写高品质的GUI程式 -使用UML的Statechart
- 在 Eclipse Workbench 之外使用 Eclipse GUI,第 1 部分: 单独使用 JFace 和 SWT