现在有没有好的跨平台的 UI 库

2021 年 3 月 3 日
 csulyb

想做一款类似百度网盘(主要 UI 很类似)的软件,之前一直 mfc+soui 在 windows 开发,由于需要到多平台运行,考虑 4 种方案来开发: 1.net+wpf 2.java 3.qt 4.electron 或者 nw (发布的包有点大,基本排除)

大家有没有好的推荐,选择哪个好点?

14005 次点击
所在节点    程序员
85 条回复
kongziming
2021 年 3 月 4 日
Qt,使用过 MFC 的话,用起 Qt 简单易上手
darknoll
2021 年 3 月 4 日
@TomVista 没玩过 CEF ?
buzailianxi
2021 年 3 月 4 日
qt
g00001
2021 年 3 月 4 日
其实前端网页能共用就行了,没有必要底层一定要跨平台,这样避免不必要的给自己挖坑。
ELectron 其实不如微软 Edge 的 WebView ( Chromium 内核) 轻量简洁。

aardio 里调用 WebView 的例子,生成的 EXE 文件打包就几百 KB

import win.ui;
var winform = win.form(text="Edge 浏览器控件 - web.view";right=759;bottom=469;bgcolor=16777215)

import web.view;
var wb = web.view(winform);

wb.export({
alert = function(msg){
winform.msgbox(msg);
return 123;
}
nativeLog = function(msg){
winform.msgbox(msg);
}
})

wb.html = /**
<script type="text/javascript">
alert("test").then( v=>nativeLog(v))
</script>
**/

winform.show();
win.loopMessage();
littlewing
2021 年 3 月 4 日
electron 感觉很耗资源,不流畅
BernieDu
2021 年 3 月 4 日
跨平台 UI 库还没黄啊。。android 和 iOS 本身就不应该共用一套设计,so stupid,外加原生开发体验很爽性能很高。没错,我是原生派
QBugHunter
2021 年 3 月 4 日
Qt 最优选,但如果选择 Qt 的话招人是个问题,搞 C++的工资要求都不低(不算我)
Electron,不适合高性能产品,如果没有对性能上的追求,Electron 也是个好的选择
fgodt
2021 年 3 月 4 日
qt,electron 其他都不靠谱
TomVista
2021 年 3 月 4 日
@darknoll 没有
lonewolfakela
2021 年 3 月 4 日
其实弄个 wine 也不是不可以……
SenLief
2021 年 3 月 4 日
qt 在跨平台上更友好,如果不在乎包大小,那无疑 electron 更方便。
piaochen0
2021 年 3 月 4 日
@murmur 我们之前用 unity 做过 app,就是考虑跨平台,各种坑,包也特别大,很多东西也没解决方案。慎用...
ACodelover
2021 年 3 月 4 日
GTK,最近刚发布了 GTK4
Lemeng
2021 年 3 月 4 日
QT,容易,好上手
Otho
2021 年 3 月 4 日
推荐 Qt ,qt5 完整的做过一个跨平台的网盘项目,系统差异大的需要自己处理一下,github 上多找找也有不少开源库。就是资料少一点儿,需要自己慢慢找。
nutting
2021 年 3 月 4 日
知乎上的轮子哥搞了一个 ui 组件,你问问
AmiKara
2021 年 3 月 4 日
不管选什么最后开发还是与开发能力有关,electron 确实有很多坑,但也有类似于 vsc 这种非常优秀的产品,还是得看个人的技术栈或学习能力。
csulyb
2021 年 3 月 4 日
@Otho #75 能说啥有哪些坑吗
nerocc
2021 年 3 月 4 日
真的需要发布包小的话,不要等框架,自己找一个类似于 WebWindow 这种的做前端,然后后端用一个自己懂得的高效率语言写一个,然后自己想办法打包起来。

SteveSandersonMS/WebWindow
yunyuyuan
2021 年 3 月 4 日
PyQt,写起来挺快,运行也不错

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

https://study.congcong.us/t/758052

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

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

© 2021 V2EX