最近一直在看rust,语法挺头疼的,正好趁着1.0发布前的一段时间,回来玩玩golang。
golang的语法很简单,liteIde又变得越来越好用,因此学习golang不会花费您多少时间,还能够清醒被rust晃晕的头脑,哈哈。
winform开发虽然已经不再流行,但是用来练手却非常合适,写小工具也很爽,废话少说,golang的UI库就是大名鼎鼎的 andlabs ui, 在github的star数已达到1946,相当可观。这是一个跨平台的UI库,可以运行在 windows/linux/mac上,相当令人激动。
我按照github的提示在一台重装过系统的机器上安装golang,并跑起一个winForm程序,说明库已可用,但是问题仍然不少。
建议在golangTc网站上下载golang最新的安装程序或者压缩包,同时还有liteide
golang:
http://www.golangtc.com/static/go/go1.4.1.windows-386.msi
liteide:
http://www.golangtc.com/static/liteide/X27/liteidex27-1.windows.zip
git.exe下载地址:
带一个简单gui,很好用,居家旅行必备。
mingw安装(配合cgo):
1. golang安装完成后,配置GOPATH环境变量,这点不必多说。在cmd中运行go env,OK.
2. git正确安装,其中勾选在window cmd中使用命令,就会添加目录到path环境变量。
liteide直接解压,找到liteIde.exe,直接运行就ok.
3. 安装mingw,双击运行,按照默认选项,安装到结束。
4. go get ui包
在控制台输入 go get github.com/andlabs/ui,等待数分钟。如果没有出现错误,就OK。
如果出现了错误,说明有干扰项,gcc没有调用成功, 仔细查看环境变量,是否有其他版本的gcc或者同名的dll等,例如我安装过haskell,环境变量设置mingw的bin目录前面,所以调用的haskell的gcc,就错误了。将mingw的bin目录调整到path环境变量的最前面,OK.
5.以上工作结束后,用liteide新建一个go文件,按照 tutorial 的代码复制一份,点击bulld and run,就可以看到一个form了。我稍微修改了下,再弹出一个form。代码写起来还是比较舒服的。
以上是ui自带的一个demo,作者懒,并没有列举全控件,示例少。
现在最大的问题的是失效区域重绘有问题,经常看到白板窗体,作者现在的精力可能还不在这些细节上,毕竟UI库是所有框架中最难的,耗时费力,要有很大的耐心。比一丢丢的web框架难度大多了。希望作者撑下去,撑下去。。,
作者说,这辈子都一定坚持搞桌面UI,让我十分感动...,
我也是一个golang初学者,golang目前只是作为手机app后端的api colud工具.其他方面还未体会到golang的好处,又被rust吸引了,只好无止境地折腾下去了。