PyQt5弹出窗口大全:实现输入框、消息框、文件对话框等
38 浏览量
更新于2024-09-02
收藏 109KB PDF 举报
PyQt5 弹出窗口大全笔记
PyQt5 是一个 Python 库,用于创建图形用户界面(GUI)应用程序。弹出窗口是 GUI 应用程序中非常重要的一个组件,用于与用户交互,获取用户输入,显示信息等。今天,我们将讨论 PyQt5 中的弹出窗口大全,包括输入框、消息框、文件对话框、颜色对话框、字体对话框和自定义对话框等。
输入框
在 PyQt5 中,可以使用 QLineEdit widget 创建输入框。输入框可以用于获取用户的文本输入,可以是整数、小数、文本等。例如:
```python
from PyQt5.QtWidgets import QLineEdit
input_widget = QLineEdit()
```
消息框
消息框是用于显示信息的弹出窗口,可以是信息、问答、警告、危险等类型。PyQt5 提供了多种消息框,例如:
```python
from PyQt5.QtWidgets import QMessageBox
msg_box = QMessageBox()
msg_box.setText("这是一个信息消息框")
msg_box.exec_()
```
文件对话框
文件对话框用于选择文件或文件夹,PyQt5 提供了多种文件对话框,例如:
```python
from PyQt5.QtWidgets import QFileDialog
file_dialog = QFileDialog()
file_dialog.setFileMode(QFileDialog.AnyFile)
file_dialog.setViewMode(QFileDialog.Detail)
file_dialog.exec_()
```
颜色对话框
颜色对话框用于选择颜色,PyQt5 提供了 QColorDialog widget:
```python
from PyQt5.QtWidgets import QColorDialog
color_dialog = QColorDialog()
color_dialog.exec_()
```
字体对话框
字体对话框用于选择字体,PyQt5 提供了 QFontDialog widget:
```python
from PyQt5.QtWidgets import QFontDialog
font_dialog = QFontDialog()
font_dialog.exec_()
```
自定义对话框
自定义对话框可以用于实现特殊的交互需求。PyQt5 提供了信号/槽机制,可以用于实现自定义对话框的返回值。例如:
```python
from PyQt5.QtCore import pyqtSignal
class MyDialog(QDialog):
signal = pyqtSignal(str)
def __init__(self):
super().__init__()
def accept(self):
self.signal.emit("这是一个自定义对话框")
super().accept()
```
示例代码
以下是完整的示例代码:
```python
from PyQt5.QtWidgets import *
from PyQt5.QtCore import Qt, pyqtSignal, QTimer
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('PyQt5 弹出窗口大全')
self.resize(400, 300)
wl = QVBoxLayout(self)
h1 = QHBoxLayout()
btn11 = QPushButton('输入:整数')
btn12 = QPushButton('输入:小数')
btn13 = QPushButton('输入:文本')
btn14 = QPushButton('输入:多文')
btn15 = QPushButton('输入:选项')
h1.addWidget(btn11)
h1.addWidget(btn12)
h1.addWidget(btn13)
h1.addWidget(btn14)
h1.addWidget(btn15)
h2 = QHBoxLayout()
btn21 = QPushButton('消息:信息')
btn22 = QPushButton('消息:问答')
btn23 = QPushButton('消息:警告')
btn24 = QPushButton('消息:危险')
btn25 = QPushButton('消息:关于')
h2.addWidget(btn21)
h2.addWidget(btn22)
h2.addWidget(btn23)
h2.addWidget(btn24)
h2.addWidget(btn25)
h3 = QHBoxLayout()
btn31 = QPushButton('文件:文件夹')
btn32 = QPushButton('文件:单文件')
btn33 = QPushButton('文件:多文件')
btn34 = QPushButton('文件:保存')
btn35 = QPushButton('文件:另存为')
h3.addWidget(btn31)
h3.addWidget(btn32)
h3.addWidget(btn33)
h3.addWidget(btn34)
h3.addWidget(btn35)
h4 = QHBoxLayout()
btn41 = QPushButton('颜色')
btn42 = QPushButton('字体')
btn43 = QPushButton('自定义')
h4.addWidget(btn41)
h4.addWidget(btn42)
h4.addWidget(btn43)
wl.addLayout(h1)
wl.addLayout(h2)
wl.addLayout(h3)
wl.addLayout(h4)
```
PyQt5 提供了非常丰富的弹出窗口组件,可以满足各种 GUI 应用程序的需求。
2019-12-11 上传
2020-09-19 上传
2022-07-10 上传
2020-09-19 上传
2023-08-03 上传
2023-05-24 上传
2023-09-30 上传
2023-09-29 上传
weixin_38610682
- 粉丝: 6
- 资源: 878
最新资源
- 全国江河水系图层shp文件包下载
- 点云二值化测试数据集的详细解读
- JDiskCat:跨平台开源磁盘目录工具
- 加密FS模块:实现动态文件加密的Node.js包
- 宠物小精灵记忆配对游戏:强化你的命名记忆
- React入门教程:创建React应用与脚本使用指南
- Linux和Unix文件标记解决方案:贝岭的matlab代码
- Unity射击游戏UI套件:支持C#与多种屏幕布局
- MapboxGL Draw自定义模式:高效切割多边形方法
- C语言课程设计:计算机程序编辑语言的应用与优势
- 吴恩达课程手写实现Python优化器和网络模型
- PFT_2019项目:ft_printf测试器的新版测试规范
- MySQL数据库备份Shell脚本使用指南
- Ohbug扩展实现屏幕录像功能
- Ember CLI 插件:ember-cli-i18n-lazy-lookup 实现高效国际化
- Wireshark网络调试工具:中文支持的网口发包与分析