弃 PyQt 转投 PySide2 怀抱?!【小甲鱼最新课程要来啦?】
本帖最后由 不二如是 于 2019-9-4 08:03 编辑观光(遗迹):传送门
作为 3 年前的一名前渣渣 Qt 开发工程师,曾一度想振兴论坛的 Qt 板块,然鹅,拥抱真实的现实好了。
今天,是时候再次起航了,因为 PySide2 来了!
看一段深夜和鱼C至霸,小甲鱼老师(防暴露,已隐藏)的一段微信对话:
这段对话隐藏的彩蛋:
**** Hidden Message *****
2、右边可爱的头像原图:
3、小甲鱼老师没有在中国?
好啦,说正题!
为什么要用 PySide2
PySide 是跨平台的应用程序框架 Qt 的 Python 绑定版本。
在 2009 年 8 月,PySide 首次发布。
提供和 PyQt 类似的功能,并相容 API 。
但与 PyQt 不同处为使用 LGPL 授权。
(PyQt 是 GPLv3 协议,关于协议差别,我放在文章最后说明)
Pyside2 正式版是在今年(2019)7 月 27 发布的:
官网:传送门
已经直接支持 pip 安装:
pip install PySide2
对于不同系统有不同的安装方式,本人用的 Mac,静待安装完成即可:
支持最新的 Python 3.7:
Pyside 这种架构(QML),就是现在微信小程序玩法的鼻祖,随便来段代码感受下。
在 view.qml 编辑代码如下:
// 导入Qt附带的内置QML类型(如Rectangle,Image,...)
import QtQuick 2.0
// 使用Rectangle类型声明根元素,Rectangle类型是在QML中创建应用程序的基本构建块之一
Rectangle {
// id用于标识该元素
id: page
// 设置元素属性
width: 500; height: 200
color: "lightgray"
// 添加Text元素作为Rectangle元素的子元素以显示文本
Text {
id: helloText
text: "Hello world!"
// 使用其y属性将其定位在距其父级顶部30px的位置
y: 30
// 指定Text元素在Rectangle元素中水平居中
anchors.horizontalCenter: page.horizontalCenter
// 文本属性设置
font.pointSize: 24; font.bold: true
}
}
在 main.py 中编辑代码如下:
from PySide2.QtWidgets import QApplication
from PySide2.QtQuick import QQuickView
from PySide2.QtCore import QUrl
app = QApplication([])
view = QQuickView()
url = QUrl("view.qml")
view.setSource(url)
view.show()
app.exec_()
效果图:
PySide2 支持 Qt5,下载完直接用,过两天有心情写个简单教程{:10_297:} 。
不过大家可以看看官方的教程(没错,全英):传送门
跟着小甲鱼老师学就完了,不要在乎发型,安慰自己:
至少又变强啦{:10_256:}
协议隐含未来
PyQt 是商业及 GPL 的版权, 而 PySide 是 LGPL 。
也就是如果使用 PyQt 做商业应用的话就需要付费, 而使用 Nokia 的 PySide 则不需要。
自从 Nokia 收购了 Qt, 一直大力推广 Qt 。
最新的 PySide 已经支持 MS Windows,而且是 LGPL 的。
相信 PySide 未来会比 PyQt 更强大易用。
按照 Nokia 的说法是会更加 Pythonic (Python 化)。
如果有收获,别忘了评分{:10_281:} :
http://xxx.fishc.com/forum/201709/19/094516hku92k2g4kefz8ms.gif 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} {:10_256:} 已期待这个好久,支持,力顶!!!! 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:}
搞点不一样的东西玩,虽然还没做过实际项目{:5_109:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 我要学《Python也能做出炫酷的界面》课程!!!必须学,无以复加的渴望中{:10_297:} 滑稽