百木园-与人分享,
就是让自己快乐。

[ Python ] PyQt5 PySide2 笔记

https://www.cnblogs.com/yeungchie/

PyQt5

from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *

PySide2

from PySide2.QtWidgets import *
from PySide2.QtCore import *
from PySide2.QtGui import *

顶部应用

QApplication

app = QApplication([])
app.setStyle(QStyleFactory.create(\'Fusion\'))    # 稍微好看点的样式
app.exec_()

部件

QWidget

wg = QWidget()

窗口标题

wg.setWindowTitle(\'YEUNGCHIE\')

窗口尺寸

  • 初始尺寸
wg.resize(300, 200) # 设置尺寸
wg.size()           # 获取当前尺寸
  • 最小/大尺寸
wg.setMinimumSize(300, 200) # 设置最小尺寸
wg.setMaximumSize(300, 200) # 设置最大尺寸
wg.minimumSize()            # 获取最小尺寸
wg.maximumSize()            # 获取最大尺寸
  • 固定尺寸
wg.setFixedSize(300, 200)   # 固定尺寸
wg.setFixedWidth(300)       # 固定宽度
wg.setFixedHeight(200)      # 固定高度
  • 宽度
wg.setMinimumWidth(300)     # 设置最小宽度
wg.setMaximumWidth(300)     # 设置最大宽度
wg.minimumWidth()           # 获取最小宽度
wg.maximumWidth()           # 获取最大宽度
  • 高度
wg.setMinimumHeight(200)    # 设置最小高度
wg.setMaximumHeight(200)    # 设置最大高度
wg.minimumHeight()          # 获取最小高度
wg.maximumHeight()          # 获取最大高度

窗口位置

wg.move(300, 200)

窗口置顶

wg.setWindowFlags(Qt.WindowStaysOnTopHint)

设置布局

wg.setLayout(self.gridLayout)

QLabel

label = QLabel()

文本

label.setText(\'LABEL\')      # 设置文本
label.text()                # 获取文本
label.setIndent()           # 设置文本缩进
label.setToolTip( \'Tips\' )  # 设置提示
label.setAlignment( Qt.AlignCenter | Qt.AlignRight )    # 设置文本对齐方式

事件

  • 点击
label.linkClicked.connect(function) # 点击
  • 划过
label.setText(\'<a href=\"https://baidu.com\">Baidu</a>\')
label.linkHovered.connect(function) # 划过

QCheckBox

checkBox = QCheckBox()

文本

checkBox.setText( \'Enable\' )    # 设置文本
checkBox.text()                 # 获取文本

点击

checkBox.setChecked(True)   # 选中
checkBox.setChecked(False)  # 不选中
checkBox.isChecked()        # 返回选中状态

QLineEdit

lineEdit = QLineEdit()

文本

lineEdit.setText( \'working dir\' )   # 设置文本
lineEdit.text()                     # 获取文本

提示词

lineEdit.setPlaceholderText( \'输入框内提示词\' )
lineEdit.setToolTip( \'鼠标悬停提示词\' )

QComboBox

comboBox = QComboBox()

添加选项

comboBox.addItem(\'virtuoso\')
comboBox.addItem(\'skipper\')
comboBox.addItems(\'R0 R90 MX MY MYR90\'.split(\' \'))
comboBox.insertItem(5, \'MXR90\')     # 索引 5 的位置插入 MXR90
comboBox.insertItems(2, [\'R180\', \'R270\'])

移除选项

comboBox.removeItem(0)  # 移除第 0 个

选择选项

comboBox.setCurrentText( \'virtuoso\' )   # 设置选择(文本)
comboBox.currentText()                  # 获取选择(文本)
comboBox.setCurrentIndex()              # 设置选择(索引)
comboBox.currentIndex()                 # 获取选择(索引)

选项编辑

comboBox.setItemText(0, \'Calibre\')      # 将第 0 个选项改为 Calibre

QPushButton

pushButton = QPushButton()

文本

pushButton.setText( \'OK\' )  # 设置文本
pushButton.text()           # 获取文本

事件

pushButton.linkClicked.connect(function) # 点击

布局

QFormLayout

formLayout = QFormLayout()

标签对齐

formLayout.setLabelAlignment( Qt.AlignCenter | Qt.AlignRight )  # 靠右中心对齐

增加 row

formLayout.addRow(\"标签1 Label\", label)
formLayout.addRow(\"标签2 CheckBox\", checkBox)

QGridLayout

gridLayout = QGridLayout()

添加组件

gridLayout.addWidget(label, 0, 0)           # 布置于 row0, col0
gridLayout.addWidget(checkBox , 0, 1)       # 布置于 row0, col1
gridLayout.addWidget(lineEdit , 0, 2, 3, 1) # 布置于 row0, col2, row_span3, col_span1

来源:https://www.cnblogs.com/yeungchie/p/16219094.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » [ Python ] PyQt5 PySide2 笔记

相关推荐

  • 暂无文章