README.md

    重启pyqt5目的与意义

    • 构建一个标准流程
    • 方便下次直接上手

    目录

    • 1.模块功能
    • 2.常用控件
    • 3.布局
    • 4.信号与槽

    1.模块功能 QtWidgets, QtCore, QtGui

    • QtWidgets 包含了一系列创建桌面应用的UI元素。
    • QtGui 包含了窗口系统、事件处理、2D图像、基本绘画、字体和文字类。
    • QtCore 包含了核心的非GUI的功能。主要和时间、文件与文件夹、各种数据、流、URLs、mime类文件、进程与线程一起使用。

    2.常用控件

    • 2.0标签 (QLabel)
    • 2.1按钮 (QPushButton)
    • 2.2输入框 (QLineEdit, QInputDialog)
    • 2.3单选多选项 (QCheckBox, QComboBox)
    • 2.4消息弹窗 (QMessageBox().question(self,tit,text,OK|NO,DF))

    3.布局

    3.1 盒布局

    使用盒布局能让程序具有更强的适应性。这个才是布局一个应用的更合适的方式。QHBoxLayout和QVBoxLayout是基本的布局类,分别是水平布局和垂直布局。 如果我们需要把两个按钮放在程序的右下角,创建这样的布局,我们只需要一个水平布局加一个垂直布局的盒子就可以了。再用弹性布局增加一点间隙。

        # [] | OK | NO
        hbox = QHBoxLayout()
        hbox.addStretch(1)
        hbox.addWidget(okButton)
        hbox.addWidget(cancelButton)
        
        #   []
        #   ———
        #   hbox
        vbox = QVBoxLayout()
        vbox.addStretch(1)
        vbox.addLayout(hbox)
    
        self.setLayout(vbox) 

    3.2 栅布局

        grid = QGridLayout()
        grid.setSpacing(10)
    
        grid.addWidget(obj, 3, 1, 5, 1)
        第n列(h),第n行(w),跨度行(h),跨度列(w)
    
        self.setLayout(grid)
    
        可以弹性拉伸
            # 亲测:横向可以调整(即多占即列,拉伸宽度
            # 位置都是相对的, 多退少不补
            # (少分配了位置会重叠)
            # 多分配了会自动调整

    4.信号与槽 signal slot (事件监听)

    • 信号(事件)pyqtSignal().emit()
    • 槽(监听) obj.signal.connect(slot)
      • connect: 使用connect()将信号连接到槽
      • disconnect: 使用disconnect()销毁连接

    项目简介

    项目目的:

    方便下次直接上手 构建QT使用一个标准流程

    发行版本

    当前项目没有发行版本

    贡献者 2

    monicedy @qq_40933467
    M monicedy @monicedy

    开发语言