5.QtCreator帮助信息的使用
5.1QtCreator帮助信息
在安装PyQt5时不会安装类库帮助文档,当然,可以使用PyQt5的在线帮助文档,但并不是完整的,所以,可以在QtCreator中使用帮助文档,帮助文档中包括类的属性、定义、接口、槽函数、信号等都有相应的说明。
5.2在Python中获取帮助信息
可以通过Python的一些指令来获取帮助信息,如:
>>> from PyQt5.QtWidgets import QPushButton >>> dir(QPushButton)
指定dir会列出类的所有属性和方法的名称。
>>> help(QPushButton) Help on class QPushButton in module PyQt5.QtWidgets: class QPushButton(QAbstractButton) | QPushButton(parent: QWidget = None) | QPushButton(str, parent: QWidget = None) | QPushButton(QIcon, str, parent: QWidget = None) | | Method resolution order: | QPushButton | QAbstractButton | QWidget | PyQt5.QtCore.QObject | sip.wrapper | PyQt5.QtGui.QPaintDevice | sip.simplewrapper | builtins.object | | Methods defined here: | | actionEvent(...) | | autoDefault(...) | autoDefault(self) -> bool | | changeEvent(...) | | checkStateSet(...) | | childEvent(...)
指令help会列表详细的类的所有属性和方法。
>>> help(QPushButton.childAt) Help on built-in function childAt: childAt(...) childAt(self, QPoint) -> QWidget childAt(self, int, int) -> QWidget
指令help也会显示一个方法的函数原型。
5.3正确导入类
在PyQt5中如何查找类所在的模块呢?比如:要查找QPalette这个类所在的模块。我们先在Qt Creator的帮助文档中找到这个类:
在该类的帮助文档中,有一行:
qmake: QT += gui
说明该类在gui模块中,所以,在PyQt5中导入语句就应该是:
from PyQt5.QtGui import QPalette
Qt Creator帮助文档中的qmake描述与PyQt5模块的对应关系
qmake | PyQt5 |
---|---|
QT += core | QtCore |
QT += gui | QtGui |
QT += widgets | QtWidgets |
QT += multimedia | QtMultimedia |
QT += multimediawidgets | QtMultimediaWidgets |
QT += sql | QtSql |
5.4数据类型的对应关系
Qt C++与PyQt5之间的数据类型对应关系
1.枚举值常数
Qt C++的名称空间Qt中包含的大量枚举类型定义,在PyQt5.QtCore模块中的Qt类中通过类属性来对应,如:
Qt::white 在PyQt5中 Qt.white。
在其他类中也是同样的,通过对应的类属性来访问。
2.Qt C++的QString在Python中对应的是str类型
3.列表类型
Qt C++中的QList<type>
在Python中为list[type],如QStringList对应Python中list[str]