V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
nekolr
V2EX  ›  Python

Python gui 的疑问

  •  
  •   nekolr · 2022-08-26 16:21:33 +08:00 · 3658 次点击
    这是一个创建于 809 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    22 条回复    2022-09-08 22:02:42 +08:00
    dlsflh
        1
    dlsflh  
       2022-08-26 16:22:46 +08:00 via Android
    初学者做小工具我推荐 pysimplegui 。
    also24
        2
    also24  
       2022-08-26 16:23:45 +08:00
    PySide6
    nekolr
        3
    nekolr  
    OP
       2022-08-26 16:25:44 +08:00
    @dlsflh 谢谢,有点不甘心,已经用这个库边学边写了一部分代码了
    nekolr
        4
    nekolr  
    OP
       2022-08-26 16:26:53 +08:00
    @also24 就我目前知道的信息,pyqt 跟 pyside6 应该可以看作一个东西吧,只是协议的不同?我想找的是能够免费试用的图形化设计 qt 的软件
    lyusantu
        5
    lyusantu  
       2022-08-26 16:30:18 +08:00
    nekolr
        6
    nekolr  
    OP
       2022-08-26 16:34:49 +08:00
    @lyusantu 谢谢,这个工具看起来不错
    also24
        7
    also24  
       2022-08-26 16:36:15 +08:00   ❤️ 1
    @nekolr #4
    安装 PySide6 的时候,会默认一起装好 Qt Designer
    AlexShui
        8
    AlexShui  
       2022-08-26 16:36:40 +08:00 via Android
    PyQt5 场景下,qt creator 可以图形化创建 gui ,然后把.ui 文件转成 py 文件就能用了。商业用途 PyQt 是要付费的。
    nekolr
        9
    nekolr  
    OP
       2022-08-26 16:39:08 +08:00
    @also24 谢谢,我试试!
    kaedeair
        10
    kaedeair  
       2022-08-26 16:43:46 +08:00
    @nekolr #4 pyqt 不是官方的 python 支持库,他是 gpl 的; pyside 是官方的支持库,是 lgpl 的
    lgpl 可以在动态链接时,不支付费用
    二者在开源情况下都是免费的
    nekolr
        11
    nekolr  
    OP
       2022-08-26 16:46:50 +08:00
    @kaedeair 感谢解惑!
    dassh
        12
    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
        13
    nekolr  
    OP
       2022-08-26 17:14:17 +08:00
    @dassh 好的,谢谢解答
    sugarkeek
        14
    sugarkeek  
       2022-08-26 17:34:48 +08:00
    我感觉还是手撸界面舒服,确实看起来麻烦点,designer 生成的我感觉不可控,一大堆的布局
    nekolr
        15
    nekolr  
    OP
       2022-08-26 17:47:24 +08:00
    @also24 改为使用 pyside6 ,确实自带 qt designer ,非常感谢!
    makelove
        16
    makelove  
       2022-08-26 19:25:19 +08:00
    tkinter 这种垃圾还有人推?谁写谁知道,坑不是一般的大
    Deteriorator
        17
    Deteriorator  
       2022-08-26 21:02:00 +08:00
    今天用 nuitka 打包了一个 PyQt 小工具,直接 80 多 MB 。。。
    nyxsonsleep
        18
    nyxsonsleep  
       2022-08-27 01:26:13 +08:00
    推荐是前后端分离,直接写个 js 的界面用。
    python 写 gui 很笨重。
    yucongo
        19
    yucongo  
       2022-08-27 23:17:13 +08:00 via Android
    pyqt 也可以自己另装 designer ,pyqt-tools 或之类的。
    subjadeites
        20
    subjadeites  
       2022-08-30 01:07:14 +08:00 via Android
    介意 GPL 系列的可以用 wxpython ,有个简单的可视化生成工具(并不好用)。好处是非 GPL ,组件数量还算可以而且也跨平台。
    Virace
        21
    Virace  
       2022-09-01 11:43:58 +08:00
    个人是用的 PySide6 ,Qt Design Studio 写的 qml 项目,Qt Creator 写 widgets 。 现在常用 qml 。
    tankren
        22
    tankren  
       2022-09-08 22:02:42 +08:00
    给公司财务写的小工具用 pyside6 做的,直接在桌面上放一个 pyw 的快捷方式,打包都省了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5499 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 06:56 · PVG 14:56 · LAX 22:56 · JFK 01:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.