014.PyQt5_QWidget_简介&继承&控件创建

QWidget简介

  • QWidget是所有的可视控件的基类
  • 描述
    • 所有的可视控件的基类
    • 是一个最简单的空白控件
    • 控件是用户界面的最小元素
      • 接收各种事件(鼠标事件,键盘事件)
      • 绘制在桌面上,展示给用户看
    • 每个控件都是矩形的,它们按Z轴顺序排序
    • 控件由其父控件和前面的控件剪切
    • 没有父控件的控件, 称之为窗口
      • 一般会被包装成一个框架(标题栏...)
      • 可以通过某些设置进行更改

QWidget继承

  • 查看父类的方法
    • 在PyCharm中,按住Ctrl键然后用鼠标点击QWidget,就会进入到QWidget类中,就可以看到QWidget是继承自QObject和QPaintDevice(绘制类)
      • 014.PyQt5_QWidget_简介&继承&控件创建_第1张图片

      • 014.PyQt5_QWidget_简介&继承&控件创建_第2张图片

    • 通过对象的__bases__属性查看其直接父类(QWidget.__bases__
      • 014.PyQt5_QWidget_简介&继承&控件创建_第3张图片

    • 通过对象的mro()方法,但是这个获取到的是对象的祖辈类(父类、爷爷类....)
      • 014.PyQt5_QWidget_简介&继承&控件创建_第4张图片

  • 继承的特性
    • 资源继承,子类会继承父类的所有资源

控件创建

  • 控件的创建
    from PyQt5.Qt import *
    import sys

    app = QApplication(sys.argv)
    # 创建一个QWidget控件
    w = QWidget()
    
    # 没有父对象的控件是顶层控件(窗口)
    # 顶层控件不会自动显示,需要通过show方法来显示
    w.show()
    sys.exit(app.exec_())
    
  • 通过 QWidget() 来创建时,就会立即执行QWidget对象的 __init()__ 方法,并且将 QWidget() 括号中的参数传递给 __init()__ 方法
    init(self, parent=None, flags)
    参数说明
    parent:父控件
    flags:标志位(对窗口的一些设置,如最大最小化是否显示、可用等。后面会具体讲)

你可能感兴趣的:(PyQt5,pyqt,qt,python,qt5,开发语言)