python教程
- Python教程
- Python 简介
- Python3 下载安装
- python基础语法
- Python基本数据类型
- Python数据类型转换
- Python解释器
- Python 注释
- Python运算符
- Python数字(Number)
- Python字符串
- Python列表
- Python元组
- Python3 字典
- Python集合
- Python条件控制
- Python循环语句
- Python编程第一步
- Python 推导式
- Python3 迭代器与生成器
- Python函数
- Python lambda(匿名函数)
- Python 装饰器
- Python数据结构
- Python3 模块
- Python __name__ 与 __main__
- Python输入和输出
- Python3 File(文件) 方法
- Python3 OS 文件/目录方法
- Python3 错误和异常
- Python3 面向对象
- Python3 命名空间和作用域
- Python3 标准库概览
- -----高级教程----------
- Python3 正则表达式
- Python CGI编程
- Python MySQL - mysql-connector 驱动
- Python3 MySQL 数据库连接 - PyMySQL 驱动
- Python3 网络编程
- Python3 SMTP发送邮件
- Python3 多线程
- Python3 XML 解析
- Python3 JSON 数据解析
- Python3 日期和时间
- Python MongoDB
- **Python Mongodb 插入文档
- **Python Mongodb 查询文档
- **Python Mongodb 修改文档
- **Python Mongodb 排序
- **Python Mongodb 删除数据
- Python urllib
- Python uWSGI 安装配置
- Python3 pip
- Anaconda 教程
- Python3 operator 模块
- Python math 模块
- Python requests 模块
- Python random 模块
- Python AI 绘画
- Python statistics 模块
- Python hashlib 模块
- Python 量化
- Python pyecharts 模块
- Python selenium 库
- Python 爬虫 - BeautifulSoup
- Python Scrapy 库
- Python Markdown 生成 HTML
- Python sys 模块
- Python Pickle 模块
- Python subprocess 模块
- Python queue 模块
- Python StringIO 模块
- Python logging 模块
- Python datetime 模块
- Python re 模块
- Python csv 模块
- Python threading 模块
- Python asyncio 模块
- Python PyQt
- **Python PyQt 常用组件
- **Python PyQt 布局管理
- **Python PyQt 信号与槽机制
PyQt 是 Python 语言的 GUI 编程工具包,它是 Qt 应用程序框架的 Python 绑定。
Qt 是一个跨平台的 C++ 图形用户界面应用程序开发框架,广泛用于开发 GUI 程序。
PyQt 提供了丰富的组件(Widgets)来构建用户界面,这些组件是构建 GUI 应用程序的基础模块。
基础窗口组件
QMainWindow
QMainWindow 是主窗口类,提供了标准的应用程序框架:
实例
from PyQt5.QtWidgets import QMainWindow, QApplication
app = QApplication([])
window = QMainWindow()
window.setWindowTitle('主窗口示例')
window.setGeometry(100, 100, 800, 600) # x, y, width, height
window.show()
app.exec_()QWidget
QWidget 是所有用户界面对象的基类:
实例
from PyQt5.QtWidgets import QWidget
widget = QWidget()
widget.setWindowTitle('基础窗口')
widget.show()常用输入组件
QLabel
显示文本或图像:
实例
from PyQt5.QtWidgets import QLabel
label = QLabel('这是一个标签')
label.setStyleSheet('font-size: 16px; color: blue;')QLineEdit
单行文本输入框:
实例
from PyQt5.QtWidgets import QLineEdit
line_edit = QLineEdit()
line_edit.setPlaceholderText('请输入内容...')QTextEdit
多行文本编辑器:
实例
from PyQt5.QtWidgets import QTextEdit
text_edit = QTextEdit()
text_edit.setPlainText('多行文本编辑器')QComboBox
下拉选择框:
实例
from PyQt5.QtWidgets import QComboBox combo = QComboBox() combo.addItems(['选项1', '选项2', '选项3'])
按钮类组件
QPushButton
普通按钮:
实例
from PyQt5.QtWidgets import QPushButton
button = QPushButton('点击我')
button.setStyleSheet('background-color: green; color: white;')QRadioButton
单选按钮:
实例
from PyQt5.QtWidgets import QRadioButton
radio1 = QRadioButton('选项1')
radio2 = QRadioButton('选项2')QCheckBox
复选框:
实例
from PyQt5.QtWidgets import QCheckBox
check1 = QCheckBox('选择1')
check2 = QCheckBox('选择2')布局组件
QHBoxLayout
水平布局:
实例
from PyQt5.QtWidgets import QHBoxLayout, QPushButton
h_layout = QHBoxLayout()
h_layout.addWidget(QPushButton('左'))
h_layout.addWidget(QPushButton('中'))
h_layout.addWidget(QPushButton('右'))QVBoxLayout
垂直布局:
实例
from PyQt5.QtWidgets import QVBoxLayout, QPushButton
v_layout = QVBoxLayout()
v_layout.addWidget(QPushButton('上'))
v_layout.addWidget(QPushButton('中'))
v_layout.addWidget(QPushButton('下'))QGridLayout
网格布局:
实例
from PyQt5.QtWidgets import QGridLayout, QPushButton
grid = QGridLayout()
grid.addWidget(QPushButton('(0,0)'), 0, 0)
grid.addWidget(QPushButton('(0,1)'), 0, 1)
grid.addWidget(QPushButton('(1,0)'), 1, 0)高级组件
QTableWidget
表格组件:
实例
from PyQt5.QtWidgets import QTableWidget, QTableWidgetItem
table = QTableWidget(3, 3) # 3行3列
table.setHorizontalHeaderLabels(['列1', '列2', '列3'])
table.setItem(0, 0, QTableWidgetItem('数据1'))QTreeWidget
树形组件:
实例
from PyQt5.QtWidgets import QTreeWidget, QTreeWidgetItem tree = QTreeWidget() tree.setHeaderLabels(['名称', '值']) root = QTreeWidgetItem(tree, ['根节点']) child = QTreeWidgetItem(root, ['子节点', '123'])
QTabWidget
标签页组件:
实例
from PyQt5.QtWidgets import QTabWidget, QWidget tab = QTabWidget() tab.addTab(QWidget(), '标签1') tab.addTab(QWidget(), '标签2')
对话框组件
QMessageBox
消息对话框:
实例
from PyQt5.QtWidgets import QMessageBox
msg = QMessageBox()
msg.setWindowTitle('提示')
msg.setText('这是一个消息对话框')
msg.setIcon(QMessageBox.Information)
msg.exec_()QFileDialog
文件对话框:
实例
from PyQt5.QtWidgets import QFileDialog file_name = QFileDialog.getOpenFileName(None, '选择文件', '', '文本文件 (*.txt);;所有文件 (*)')
样式设置
PyQt 支持使用 CSS 样式来美化组件:
实例
button = QPushButton('样式按钮')
button.setStyleSheet('''
QPushButton {
background-color: #4CAF50;
border: none;
color: white;
padding: 10px 24px;
text-align: center;
font-size: 16px;
margin: 4px 2px;
border-radius: 8px;
}
QPushButton:hover {
background-color: #45a049;
}
''')
© 2025 Copyright: kuaikuaixuan.com
京ICP备14015652号-3
网址导航