golang 的 UI 库

2020-01-12 21:02:45 +08:00
 AmrtaShiva
11401 次点击
所在节点    Go 编程语言
40 条回复
mnssbe
2020-01-12 21:11:19 +08:00
go 安装依赖需要科学出国
manami
2020-01-12 21:15:49 +08:00
fyne 玩过一小段时间,坑太多了弃之
lxml
2020-01-12 21:27:46 +08:00
使用 go 1.13+ 设置一些 七牛云代理

现在写 UI go 只能说基于 webaseembly 的能画个 hello world 就差不多了,wasm 本身就不成熟,go 写 UI 更不成熟,俩一碰就……
Cbdy
2020-01-12 21:57:18 +08:00
HTML/CSS/JS 不好吗?
loading
2020-01-12 22:27:57 +08:00
直接调 chrome 不好么,node 那套不也是跑 webkit 么。
ViggoSite
2020-01-12 22:58:33 +08:00
依赖问题,,,你需要 go mod
airplayxcom
2020-01-13 00:55:24 +08:00
fyne 的坑是巨多 最近才接触的,马上弃坑了,不知道作者背景,我怀疑是应届生搞得。居然还有 7k 的 star....
iamwho
2020-01-13 02:18:02 +08:00
如果你非要用 golang 搞 GUI,可以试试这个。

https://github.com/therecipe/qt
AmrtaShiva
2020-01-13 03:06:31 +08:00
@mnssbe 科学出国不是问题 VPS 都搞过 不好使 @manami 好吧 谢谢回复 @lxml 是不成熟然而别的不会 @Cbdy 凑合吧 @loading node 太重了 @ViggoSite 一直在用 go mod@airplayxcom 我也是感觉这个星标高的离谱和实际体验不成比例 @iamwho 之前装个 update 一次 按了个 Ctrl 加 C 结果什么都没了 6G 多的文件就这样白搞了一次...
markx
2020-01-13 04:03:24 +08:00
@airplayxcom 可以具体举例说说什么样的坑?
likai
2020-01-13 06:02:17 +08:00
试试 govcl 或者 wingui,虽然我也没试过
cloudfstrife
2020-01-13 09:10:28 +08:00
G3N,是一个 3D 引擎,也提供了 GUI 相关的组件。

https://github.com/g3n/engine

https://github.com/g3n/g3nd
airplayxcom
2020-01-13 10:15:55 +08:00
@markx
1.用到的所有组件貌似都木有 scroll 的功能,比如文本框输出超过当前窗口宽度会自动拉伸当前窗口,必须指定一个类似 NewGroupWithScroller 父容器。
2.当 tab 容器在 NewGroupWithScroller 中使用时候,指定的 tabitem 在超出窗体大小时整个 tabitem 会出现整体滚动现象,而我的需求是当前 tabitem 列表与所在的 CanvasObject 滚动分离。
3.tab 容器动态删除当前 tabitem 后,必须指定 select 一个已存在的其他 tabitem,不然会 panic,作者并未做动态响应。
4.当删除 tab 容器所有 tabitem 时候,必须隐藏掉当前 tab 容器,注意是隐藏。有个场景就是 tab 容器包含子容器时候,父容器被删除完毕后,子容器其实是会在画布下层依然在工作,因为作者并未实现销毁功能。
5.tabitem 没有点击事件,这也是我需要的功能。
6.文本域在粘贴包含 Unicode 字符时候会 panic,已经提了,下一版会修正。
7.文本域的粘贴会把 tab 制表符相关的内容替换为方框类似的不正常的字符。
8.高分屏的适配,可能会在未来解决。

以上是我目前遇到的坑点,可能是我使用的姿势不对,现在我的项目基本停摆了,考虑换掉。
zarte
2020-01-13 10:18:30 +08:00
有移动端?
ArJun
2020-01-13 10:19:51 +08:00
这叫非主流编程吗?
scnace
2020-01-13 10:24:11 +08:00
如果可以 webview 套壳的话考虑下 GopherJS/vecty 啥的?
zjsxwc
2020-01-13 10:26:17 +08:00
使用 golang-gotk3 和 glade 写图形界面程序,完美! https://github.com/mrccnt/gotk3-glade-example
kwanzaa
2020-01-13 10:27:48 +08:00
还不如做成库用 Flutter 写 UI。
iseejun
2020-01-13 11:14:04 +08:00
建议放弃,别问为什么
AmrtaShiva
2020-01-13 11:19:19 +08:00
@zjsxwc 感谢 glade 不会用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/637310

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX