
打算自己写个方便自己的工具箱之类的玩意,想做成加速球那种透明自绘窗口,悬浮在桌面上
功能逻辑打算用 python 或 c++,但是 ui 部分就不知道选什么了:
1 whi147 2019-12-01 12:52:44 +08:00 duilib,比较好用 |
2 yulihao 2019-12-01 13:28:59 +08:00 我无脑推荐 Qt |
3 FrankHB 2019-12-01 14:52:47 +08:00 你这是只打算用 Win32 ?一次性方案?还不如自己日 UpdateLayeredWindow 了。 |
4 FrankHB 2019-12-01 14:55:59 +08:00 我自己用的……demo: https://github.com/FrankHB/YSLib/tree/master/YDE 但是现阶段没提供工具基本比 Qt 蛋疼(虽然疼的地方不一样)。 其实 Qt 也就是那么几个 dll 嘛,,, |
5 Jirajine 2019-12-01 15:14:40 +08:00 via Android 这种需求 Qt 再合适不过。不觉得哪里惨不忍睹,就那几个 dll,无论打安装包还是绿色版压缩包都没有丝毫问题,如果你非要“单文件”的话那套个自解压就是。 为了省这几十 M 体积额外付出的时间成本高多了。 |
6 missdeer 2019-12-01 16:57:59 +08:00 Qt 静态编译,也就一个 exe 啊 |
7 zjyl1994 2019-12-01 17:18:26 +08:00 Qt 吧,如果觉得零碎文件多,有专门做绿色软件的工具,可以把运行库和本体压成一个 exe |
8 zuoshou 2019-12-01 17:33:58 +08:00 via Android 可以的胸弟 |
10 AAdalao OP @missdeer 我接触的 qt 主要是 pyqt5,没用过 qt creator 和 qmake,编译都是靠 pyinstaller,编出来的都很惨,拖家带口的。。 |
11 salamanderMH 2019-12-01 19:42:31 +08:00 WPF 也简单的,UI 部分就是学个 XML,之前做个项目: https://github.com/salamander-mh/SalamanderWnmp |
12 cyrbuzz 2019-12-01 20:21:28 +08:00 PyQt 用 pyinstaller 可以做单 exe 的打包。 |
13 yujincheng08 2019-12-01 21:10:20 +08:00 Qt 静态编译(推荐用 MSYS2 弄静态编译环境,很快),再用 UPS 压缩一下,最后也就几兆的东西 |
14 ysc3839 2019-12-01 23:36:47 +08:00 via Android 体积小和功能全很难同时拥有。 一定要追求体积的话,最终可能会变成自己写了一大堆界面渲染的代码,还毫无扩展性(比如说界面布局都写死在代码中)。 具体选择哪种方案还是看你想不想重复造轮子了。 选择 C# WPF 可以让最终可执行文件的体积比较小,不过我认为不能算真的小,因为大部分代码在 .Net Framework 里面。 关于第四点,你的理解可能有误,DirectUI 大概是指直接在画布上绘图,而不使用系统提供的 UI 组件(大概可以理解成 Web 开发不使用 html element,而是用 canvas 绘图)。 Qt , duilib 和 WPF 都是使用 DirectUI 的界面框架。 |
15 augustheart 2019-12-02 11:35:37 +08:00 如果你最后想选 duilib 的话,不用想多,都是大同小异。只是自己的项目的话随便找个用就是了。 反正你用哪个版本的 duilib 最后都要修 bug,那么简单的代码看得懂 c++都能修。 |
16 augustheart 2019-12-02 11:37:14 +08:00 如果你只是要个加速球,直接 updatelayeredwindow 就行了,用不上界面库的。 前面 LayeredWindow,后面上 DirectX 渲染,小球想怎么转就怎么转 |
17 AAdalao OP @augustheart 想用 dui 是看上自绘自由度高,但又不想手撸组件,改天想加个 tableview 发现没有就坑死自己了 |
18 augustheart 2019-12-02 14:29:26 +08:00 @AAdalao 你先想清楚你到底要拿界面库做什么啊。如果只是做个加速球,我的看法就是不要浪费时间研究界面库。直接 api 上就行。 顺便,duilib 做 tabview 还是比较容易的,因为代码简单,就算没有的控件自己倒腾一下也出来了。实际上 duilib 自带控件全是白板(没有任何预置的样式),都得自己从图片做素材。 |