您好,欢迎来到华佗健康网。
搜索
您的当前位置:首页03-python-pyqt5-基础

03-python-pyqt5-基础

来源:华佗健康网

一,简单案例

import sys
from PyQt5.QtWidgets import QApplication, QWidget

if __name__ == '__main__':
    # 创建Qt应用程序实例
    app = QApplication(sys.argv)

    # 创建一个QWidget对象,作为主窗口
    w = QWidget()
    w.resize(250, 150) 
    w.move(300, 300)
    w.setWindowTitle('Simple')
    w.show()

    # 运行Qt应用程序
    sys.exit(app.exec_())

import sys #访问命令行参数。
from PyQt5.QtWidgets import QApplication, QWidget:导入QApplication和QWidget类,这是创建窗口所必需的两个类。
app = QApplication(sys.argv):创建QApplication实例,并传递命令行参数,它是整个Qt应用程序的核心。
w = QWidget():创建一个QWidget对象,它是窗口的根节点,也是整个窗口的主部分。
w.resize(250, 150) #设置窗口大小宽w250px,高h150px
w.move(300, 300) #设置窗口位置(300px,300ox)
w.setWindowTitle(‘Simple’) #设置窗口的标题为"Simple"。
w.show() #显示窗口。
sys.exit(app.exec_()):运行Qt应用程序,并通过sys.exit()函数确保应用程序在退出时正常结束。

 二,基本窗口控件

2.1 QMain Window

        QMainWindow是Qt框架中的一个主窗口类,它提供了一个应用程序的主界面,可以包含菜单栏、工具栏、状态栏、中心窗口等各种窗口部件。在QMainWindow中,中心窗口是最重要的部分,它可以是任何Qt窗口部件,如QTextEdit、QTableView、QGraphicsView等

2.12 常用成员函数

  • setGeometry(x, y, w, h):设置窗口的位置和大小 
  • setCentralWidget():设置中心窗口部件
  • setMenuBar():设置菜单栏
  • addToolBar():添加工具栏
  • statusBar():获取状态栏
  • show():显示主窗口

2.13 QMain Window、Qwidget、QDialog的区别

QDialog: 是对话窗口的基类,没有菜单栏、工具栏、状态栏。
QMainWindow: 可以包含菜单栏、工具栏、状态栏和标题栏,是最常见的形式。
QWidget: 不确定窗口的用途,就使用Qwidget。

2.14 窗口居中案例

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel

class Example(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()

    def initUI(self):
        # 设置窗口大小
        self.setFixedSize(250, 250)
        self.setWindowTitle('窗口居中案例')
        # 创建一个QLabel控件并设置文本内容
        label1 = QLabel('Hello, PyQt5!', self)
        label1.move(15, 10)
        # 获取屏幕大小
        screen_geometry = QApplication.desktop().screenGeometry()
        # 计算窗口的位置,使其居中
        x = (screen_geometry.width() - self.width()) // 2
        y = (screen_geometry.height() - self.height()) // 2
        self.move(x, y)
        self.show()


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

2.2 Spacers控件

PyQt中的Spacer控件是一种用于布局的空白控件。

  • Spacer控件可以在布局中创建空白区域,以便在界面上分隔其他控件,或者在其他控件周围留出空白区域。
  • Spacer控件的大小可以通过设置其大小策略(size policy)来控制。
  • Spacer控件有两种类型:水平(QSpacerItem)和垂直(QSpacerItem)。
  • 可以使用QHBoxLayout或QVBoxLayout将Spacer控件添加到布局中。在添加Spacer控件时,您可以指定其最小大小、最大大小和首选大小,以及其大小策略。

2.3 Qlabel

QLabel是一个显示文本或图像的控件,它通常被用于显示静态文本信息。可以通过设置其文本、字体、颜色、对齐方式等属性来自定义标签的样式和布局。可以将QLabel放置在主窗口、对话框或其他控件上,以便在应用程序中提供帮助文本、说明、状态消息等。

​​​​​方法:

  • setText(text): 设置文本内容
  • setPixmap(pixmap): 设置图像内容
  • setAlignment(alignment): 设置文本或图像的对齐方式
  • setWordWrap( on): 当文本过长时是否自动换行
  • setObjectName("specialLabel") 设置唯一对象名,便于设置样式 
  • setFixedSize(width, height): 设置控件的固定大小
    • setFixedHeight(height) 设置控件固定高
    • setFixedWidth(height) 设置控件固定宽
    • setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) 设置控件根据文本内容自动扩展
  • setStyleSheet(styleSheet): 设置控件的样式表

属性:

  • text(): 返回控件的文本内容
  • pixmap(): 返回控件的图像内容
  • alignment(): 返回控件的对齐方式
  • wordWrap(): 返回控件是否自动换行
  • font(): 返回控件的字体
  • color(): 返回控件的颜色

2.4 QLineEdit

QLineEdit是一个用于接收用户输入的单行文本编辑控件,它允许用户输入和编辑文本信息。可以设置QLineEdit的输入格式,例如只允许输入数字、字母或特定字符,或者输入的最大长度。可以使用信号和槽机制来处理用户输入的文本,以便在应用程序中执行特定的操作或验证用户输入的有效性。

常用属性和方法

  • text():获取或设置控件的文本内容        
  • setText(text):设置控件的文本内容
  • clear():清空控件的文本内容
  • setAlignment(alignment):设置文本的对齐方式,alignment可以是Qt.AlignLeft、Qt.AlignRight、Qt.AlignCenter等值之一
  • setPlaceholderText(text):设置控件的占位符文本,当控件没有内容时显示的文本
  • setReadOnly(readOnly):设置控件是否为只读模式
  • setValidator(validator):设置控件的输入验证器,用于用户输入的内容
  • textChanged.connect(slot):文本改变时的信号,连接到相应的槽函数

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务