Golang---walk学习(一)
2017-11-03 14:03
375 查看
开始尝试用Golang语言来写界面,发现了walk这个好东西,可以实现非常优美的界面程序
walk的git地址为:http://github.com/lxn/walk
开发文档为:http://godoc.org/github.com/lxn/walk
在保证安装好了golang语言并配置好环境变量、安装Git之后,就可以直接从go命令行中获取walk
命令执行完之后就会发现在golang的GOPATH下的src目录中生成了一个github.com文件夹,是保存从github上得到的所有的第三方库,库中有很多的使用例子,本人使用的IDE是LiteIDE,导入之后就可以直接编译运行。
完整代码如下:
以上可以实现复制和粘贴功能,并在指定的text里面显示,简单强大!
界面编写起来非常的简洁,事件处理也很方便,当然,如果想将生成的exe打包的话,就需要使用另外一个工具rsrc,同样可以在命令行中直接使用go命令来获取:
得到之后,需要在rsrc目录下进行编译,最后得到的rsrc.exe放入到GOROOT目录下,此刻就可以对exe文件进行打包啦。
打包的命令为:
其实我们发现在exe在编译运行之后,就会在目录下生成一个manifest文件,而打包就是将exe文件和manifest嵌入在一起发布,命令中的test.manifest就是程序生成的文件,接下来就可以将exe文件发布了。
最后还遇到一个问题,在打包之后运行exe的时候会出现doc窗口,这是因为在编译的时候将编译窗口融合在了一起,因此在build的时候使用
这样就可以避免出现这种情况了。
最后,分享另外一个drawing例子的画图框
walk的git地址为:http://github.com/lxn/walk
开发文档为:http://godoc.org/github.com/lxn/walk
在保证安装好了golang语言并配置好环境变量、安装Git之后,就可以直接从go命令行中获取walk
命令执行完之后就会发现在golang的GOPATH下的src目录中生成了一个github.com文件夹,是保存从github上得到的所有的第三方库,库中有很多的使用例子,本人使用的IDE是LiteIDE,导入之后就可以直接编译运行。
完整代码如下:
// Copyright 2013 The Walk Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package main import ( "log" ) import ( "github.com/lxn/walk" . "github.com/lxn/walk/declarative" ) func main() { var te *walk.TextEdit if _, err := (MainWindow{ Title: "Walk Clipboard Example", MinSize: Size{300, 200}, Layout: VBox{}, Children: []Widget{ PushButton{ Text: "Copy", OnClicked: func() { if err := walk.Clipboard().SetText(te.Text()); err != nil { log.Print("Copy: ", err) } }, }, PushButton{ Text: "Paste", OnClicked: func() { if text, err := walk.Clipboard().Text(); err != nil { log.Print("Paste: ", err) } else { te.SetText(text) } }, }, TextEdit{ AssignTo: &te, }, }, }).Run(); err != nil { log.Fatal(err) } }
以上可以实现复制和粘贴功能,并在指定的text里面显示,简单强大!
界面编写起来非常的简洁,事件处理也很方便,当然,如果想将生成的exe打包的话,就需要使用另外一个工具rsrc,同样可以在命令行中直接使用go命令来获取:
得到之后,需要在rsrc目录下进行编译,最后得到的rsrc.exe放入到GOROOT目录下,此刻就可以对exe文件进行打包啦。
打包的命令为:
其实我们发现在exe在编译运行之后,就会在目录下生成一个manifest文件,而打包就是将exe文件和manifest嵌入在一起发布,命令中的test.manifest就是程序生成的文件,接下来就可以将exe文件发布了。
最后还遇到一个问题,在打包之后运行exe的时候会出现doc窗口,这是因为在编译的时候将编译窗口融合在了一起,因此在build的时候使用
这样就可以避免出现这种情况了。
最后,分享另外一个drawing例子的画图框
相关文章推荐
- golang学习的点点滴滴:闭包
- go语言学习基础(golang语言文档)
- golang并发学习笔记
- Golang学习 - sync 包
- Golang中的变量学习小结
- golang学习笔记之---waitgoup
- go语言学习-在ubuntu上安装golang
- golang学习之slice基本操作
- Duang~ Golang 学习初探
- Golang学习笔记:包制作
- Golang学习笔记 包和项目构成
- 学习Golang语言(4)
- golang学习第一篇 golang简介
- 网络表示学习(DeepWalk,LINE,node2vec,SDNE)
- Golang学习笔记:语言规范之声明与作用域
- 我得GoLang学习之路——hello world
- Golang学习书籍和论坛推荐
- GoLang学习之变量定义和初始化
- go学习笔记:golang实现的反向代理
- golang入门-- 一个2D的图形库学习