最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

环球热讯:1.PyQt5【窗口组件】小部件-QWidgt

来源:博客园

一、前言


(资料图)

QWidget翻译过来是小部件的意思,QWidgt 类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗 口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的, 并且它们按 Z 轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住 一部分。

二、学习目标

1.QWidgt界面实现

2.QWidgt常用方法

三、知识点

1.【QWidgt窗口实现】

基础窗口控件QWidget类是所有用户界面对象的基类,所有的窗口或者控件都直接或者间接的继承自QWidget类。

  • 创建语法:

    window = QWidget() 

    Qwidget()中可填入参数:"(self, parent=None, flags)"parent :父类,设置窗口父类对象,不设置为None,为顶层窗口,非必填;flags:窗口标志,非必填。

  • 窗口标志类型:

    flags说明
    Qt.MSWindowsFixedSizeDialogHint窗口无法调整大小
    Qt.FramelessWindowHint窗口无边框
    Qt.CustomizeWindowHint有边框但无标题栏和按钮,不能移动和拖动
    Qt.WindowTitleHint添加标题栏和一个关闭按钮
    Qt.WindowSystemMenuHint添加系统目录和一个关闭按钮
    Qt.WindowMaximizeButtonHint激活最大化和关闭按钮,禁止最小化按钮
    Qt.WindowMinimizeButtonHint激活最小化和关闭按钮,禁止最大化按钮
    Qt.WindowMinMaxButtonsHint激活最小化,最大化和关闭按钮
    Qt.WindowCloseButtonHint添加一个关闭按钮
    Qt.WindowContextHelpButtonHint添加问号和关闭按钮,同对话框
    Qt.WindowStaysOnTopHint窗口始终处于顶层位置
    Qt.WindowStaysOnBottomHint窗口始终处于底层位置
  • 普通写法

    import sysfrom PyQt5.QtCore import Qtfrom PyQt5.QtWidgets import QApplication, QWidget#1.创建app实例app = QApplication(sys.argv)#2.创建窗体实例myMain = QWidget(flags=Qt.MSWindowsFixedSizeDialogHint)#3.显示窗体myMain.show()#4.运行appsys.exit(app.exec_())
  • 单继承模式写法

    一个完整程序的实现往往包含很多要素,如界面、槽函数、信号等,为了让我们的界面代码与业务逻辑代码进行分离,往往使用单继承模式。

    import sysfrom PyQt5.QtCore import Qtfrom PyQt5.QtWidgets import QApplication, QWidgetclass QmyWidget(QWidget):    def __init__(self, parent=None):        super().__init__(parent, flags=Qt.MSWindowsFixedSizeDialogHint)  # 调用父类的构造函数,创建QWidget窗体if __name__ == "__main__":    #1.创建app实例    app = QApplication(sys.argv)    #2.创建窗体实例    myMain = QmyWidget()    #3.显示窗体    myMain.show()    #4.运行app    sys.exit(app.exec_())

2.【QWidgt常用方法】

  • 设置窗口位置及大小

    • 常用方法

      窗口位置常用方法说明
      move(x, y)设置窗口位置,左上角x,y坐标
      resize(width, height)设置窗口尺寸,宽度、高度
      setGeometry(x, y, width, height)设置窗口在屏幕中的位置与窗口的大小,x,y,宽度和高度
      adjustSize()根据内容自适应大小
      setFixedSize()设置固定尺寸
      setWindowTitle()设置窗体标题
    • 代码示例

      self.move(150, 150)                   # 设置窗口位置        self.resize(300, 200)                 # 设置窗口大小        self.setWindowTitle("QWidgt组件演示")  # 设置窗口标题
  • 设置气泡提示

    • 常用方法

      方法说明
      setToolTip(str)鼠标悬停在控件上一会后, 展示在旁边。
      toolTip()获得信息提示内容。
      setToolTipDuration(msec)设置显示时长。
      toolTipDuration()获取显示时长。
      setWhatsThis(str)切换到"查看这是啥"模式, 点击该控件时显示。
      whatsThis()获取这是啥内容。
    • 代码示例

      # 设置气泡提示self.setToolTip("这是一个气泡显示")
  • 设置窗口图标

    • 常用方法

      方法说明
      setWindowIcon()设置窗体图标,需要传QIcon对象
    • 代码示例

      self.setWindowIcon(QIcon("logo.png"))

关键词: 设置窗口 关闭按钮 常用方法