golang winForm开发
golang winForm开发
你来人间一趟 发表于3年前
golang winForm开发
  • 发表于 3年前
  • 阅读 6030
  • 收藏 75
  • 点赞 6
  • 评论 20

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: golang winForm

最近一直在看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下载地址:

https://s3.amazonaws.com/github-cloud/releases/325827/e8237682-8701-11e4-9dbe-7fb433262871.exe?response-content-disposition=attachment%3B%20filename%3DGit-1.9.5-preview20141217.exe&response-content-type=application/octet-stream&AWSAccessKeyId=AKIAISTNZFOVBIJMK3TQ&Expires=1423830869&Signature=ZIPmgFx0FtVasxYjjEKf2dB2bNI%3D

带一个简单gui,很好用,居家旅行必备。

mingw安装(配合cgo):

http://jaist.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe


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吸引了,只好无止境地折腾下去了。





标签: go ui windows
共有 人打赏支持
粉丝 24
博文 13
码字总数 4538
评论 (20)
itfanr
收藏了
Mrchenyz
活着就是为了折腾
ZenQy
can't agree more with 2L4
名字不能长
Rust 的确能折腾人,码代码的心情都被错误烦透了
_Elvis
折腾啊折腾
ccor

引用来自“Mrchenyz”的评论

活着就是为了折腾
+1
Zero__One
还在用xp!
__JM_Joy__
不知道rust是怎样的,但表示十分喜欢go
要吃九个橙子
折腾
无即是有
还不得golang自己不搞ui,这种模式更容易赢得开发者
你来人间一趟

引用来自“无即是有”的评论

还不得golang自己不搞ui,这种模式更容易赢得开发者
语言自带ui库其实并不好,而且ui是个大工程,现在几乎没有公司重复造轮子了,都是对现有ui库的绑定
你来人间一趟

引用来自“Quttap”的评论

还在用xp!
家里的老爷机啊
你来人间一趟

引用来自“名字不能长”的评论

Rust 的确能折腾人,码代码的心情都被错误烦透了
rust的设计还是很吸引人的,也算是开发效率和执行效率最完美的平衡
你来人间一趟

引用来自“JM_Joy”的评论

不知道rust是怎样的,但表示十分喜欢go
我感觉go的领域有限,而且这些领域和其他语言重叠了,如果你不能做的比它们好,那只能慢慢淡出人们的视线,不过欣慰地是,golang学起来非常简单,成本低。
你来人间一趟

引用来自“itfanr”的评论

收藏了
谢谢,这篇文章其实没什么实质内容...
你来人间一趟

引用来自“Mrchenyz”的评论

活着就是为了折腾
哈哈,你看我的个人说明,like a dog,like a god,程序员有时像狗,有时像上帝
myml
可以用html5啊,golang的net包挺好用的,可以跨Linux/Windows/Mac/Android了
风华神使
界面这个东西,难度大、容易错、同时也是繁琐的体力活,更要命的是,它经常被轻视
你来人间一趟

引用来自“独立风华”的评论

界面这个东西,难度大、容易错、同时也是繁琐的体力活,更要命的是,它经常被轻视
gxui不错,野心很大,只是更新不及时
lhjok
你好,可以请教一个弱弱的问题吗?按钮的键绑定要怎么实现?我想按钮绑定回车键,可以的话贴上实现代码,谢谢!!
×
你来人间一趟
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: