Python gui 的疑问

2022-08-26 16:21:33 +08:00
 nekolr

最近在写一个小工具,使用的图形库是 pyqt6 ,虽然界面比较简单,但是直接手撸界面的代码还是挺麻烦的,无奈四处查找资料,总结下来就是:一般都是通过图形化的工具(比如 Qt Designer )来设计并生成 qml ,然后程序直接加载就可以了,比较方便。但是 qt designer 似乎是 qt5 时代的东西( python 初学者不太懂),然后去 qt 的官网找,发现新工具叫 qt creator ,这个似乎是收费的。那么目前有没有免费的这类工具可以使用呢?

3448 次点击
所在节点    Python
22 条回复
dlsflh
2022-08-26 16:22:46 +08:00
初学者做小工具我推荐 pysimplegui 。
also24
2022-08-26 16:23:45 +08:00
PySide6
nekolr
2022-08-26 16:25:44 +08:00
@dlsflh 谢谢,有点不甘心,已经用这个库边学边写了一部分代码了
nekolr
2022-08-26 16:26:53 +08:00
@also24 就我目前知道的信息,pyqt 跟 pyside6 应该可以看作一个东西吧,只是协议的不同?我想找的是能够免费试用的图形化设计 qt 的软件
lyusantu
2022-08-26 16:30:18 +08:00
nekolr
2022-08-26 16:34:49 +08:00
@lyusantu 谢谢,这个工具看起来不错
also24
2022-08-26 16:36:15 +08:00
@nekolr #4
安装 PySide6 的时候,会默认一起装好 Qt Designer
AlexShui
2022-08-26 16:36:40 +08:00
PyQt5 场景下,qt creator 可以图形化创建 gui ,然后把.ui 文件转成 py 文件就能用了。商业用途 PyQt 是要付费的。
nekolr
2022-08-26 16:39:08 +08:00
@also24 谢谢,我试试!
kaedeair
2022-08-26 16:43:46 +08:00
@nekolr #4 pyqt 不是官方的 python 支持库,他是 gpl 的; pyside 是官方的支持库,是 lgpl 的
lgpl 可以在动态链接时,不支付费用
二者在开源情况下都是免费的
nekolr
2022-08-26 16:46:50 +08:00
@kaedeair 感谢解惑!
dassh
2022-08-26 16:51:24 +08:00
Qt Creator 是开发 Qt 的 IDE ,集成了 designer ,designer 版本一直在升,没什么过时不时的说法。

pysimplegui 只能写写简单的,最近正好用来做了一个工具就遇到好多坑:
1. 同一行多个 expand ,布局异常,要调用底层 tkinter 来修 bug
2. table enable_events 后,在事件循环里处理了点击行的选中效果就没了
3. 图片只支持.png, .gif ,并不能自动匹配窗口大小,要自己 convert, resize ,改变窗口大小时又没有事件,又要调用 tkinter 来绑定<Configure>事件。

本以为它是小而简单的东西,一堆坑走下来,花的时间远比用 qt designer 设计好界面、python 处理逻辑多。
楼主还是继续用吧
nekolr
2022-08-26 17:14:17 +08:00
@dassh 好的,谢谢解答
sugarkeek
2022-08-26 17:34:48 +08:00
我感觉还是手撸界面舒服,确实看起来麻烦点,designer 生成的我感觉不可控,一大堆的布局
nekolr
2022-08-26 17:47:24 +08:00
@also24 改为使用 pyside6 ,确实自带 qt designer ,非常感谢!
makelove
2022-08-26 19:25:19 +08:00
tkinter 这种垃圾还有人推?谁写谁知道,坑不是一般的大
Deteriorator
2022-08-26 21:02:00 +08:00
今天用 nuitka 打包了一个 PyQt 小工具,直接 80 多 MB 。。。
nyxsonsleep
2022-08-27 01:26:13 +08:00
推荐是前后端分离,直接写个 js 的界面用。
python 写 gui 很笨重。
yucongo
2022-08-27 23:17:13 +08:00
pyqt 也可以自己另装 designer ,pyqt-tools 或之类的。
subjadeites
2022-08-30 01:07:14 +08:00
介意 GPL 系列的可以用 wxpython ,有个简单的可视化生成工具(并不好用)。好处是非 GPL ,组件数量还算可以而且也跨平台。

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

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

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

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

© 2021 V2EX