0%

python PyQt5_查看所有基类

PyQt5_查看所有基类:

  • 建议直接去官网查看基类:

QtWidgets所有基类:点击进入



完整代码:

from PyQt5.QtWidgets import *
import sys

class any_parent(QWidget):
def __init__(self):
super().__init__()
print(QWidget.__subclasses__())

if __name__ == '__main__':
app = QApplication(sys.argv)
window = any_parent()
window.show()
sys.exit(app.exec_())


剖析代码:

# 使用__subclasses__()方法,可查看基于某个类的所有基类
QWidget.__subclasses__() # 查看QWidget的所有基类
print(QWidget.__subclasses__())

# 查看QObect的所有基类
from PyQt5.Qt import *
print(QObject.__subclasses__())



QWidget.subclasses()执行结果如下:

[<class 'PyQt5.QtWidgets.QAbstractButton'>, <class 'PyQt5.QtWidgets.QFrame'>, <class 'PyQt5.QtWidgets.QAbstractSlider'>, <class 'PyQt5.QtWidgets.QAbstractSpinBox'>, <class 'PyQt5.QtWidgets.QCalendarWidget'>, <class 'PyQt5.QtWidgets.QDialog'>, <class 'PyQt5.QtWidgets.QComboBox'>, <class 'PyQt5.QtWidgets.QDesktopWidget'>, <class 'PyQt5.QtWidgets.QDialogButtonBox'>, <class 'PyQt5.QtWidgets.QDockWidget'>, <class 'PyQt5.QtWidgets.QFocusFrame'>, <class 'PyQt5.QtWidgets.QGroupBox'>, <class 'PyQt5.QtWidgets.QKeySequenceEdit'>, <class 'PyQt5.QtWidgets.QLineEdit'>, <class 'PyQt5.QtWidgets.QMainWindow'>, <class 'PyQt5.QtWidgets.QMdiSubWindow'>, <class 'PyQt5.QtWidgets.QMenu'>, <class 'PyQt5.QtWidgets.QMenuBar'>, <class 'PyQt5.QtWidgets.QOpenGLWidget'>, <class 'PyQt5.QtWidgets.QProgressBar'>, <class 'PyQt5.QtWidgets.QRubberBand'>, <class 'PyQt5.QtWidgets.QSizeGrip'>, <class 'PyQt5.QtWidgets.QSplashScreen'>, <class 'PyQt5.QtWidgets.QSplitterHandle'>, <class 'PyQt5.QtWidgets.QStatusBar'>, <class 'PyQt5.QtWidgets.QTabBar'>, <class 'PyQt5.QtWidgets.QTabWidget'>, <class 'PyQt5.QtWidgets.QToolBar'>, <class 'PyQt5.QtWidgets.QWizardPage'>, <class '__main__.any_parent'>]