QinputDialog

输入的值可以是字符串,数字,或者一个项目从一个列表

def showDialog(self):
text, ok = QInputDialog.getText(self, 'Input Dialog', 'Enter your name:')
if ok:
self.le.setText(str(text))

# 显示对话框;第一个字符串是对话框标题,第二个字符串是对话框中的消息
# 对话框返回一个输入文本和一个布尔值,点击OK按钮,布尔值是True

# 对话框中收到的消息会显示在行编辑文本框中

 import sys
from PyQt5.QtWidgets import (QWidget, QPushButton, QLineEdit, QInputDialog, QApplication)
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI() def initUI(self):
self.btn = QPushButton('Dialog', self) # 创建一个Dialog的按钮
self.btn.move(20, 20)
self.btn.clicked.connect(self.showDialog) # btn信号连接到self.showDialog槽 self.le = QLineEdit(self) # 行编辑实例
self.le.move(130, 22) self.setGeometry(300, 300, 290, 150)
self.setWindowTitle('Input dialog')
self.show() def showDialog(self):
# 显示对话框;第一个字符串是对话框标题,第二个字符串是对话框中的消息
# 对话框返回一个输入文本和一个布尔值,点击OK按钮,布尔值是True
text, ok = QInputDialog.getText(self, 'Input Dialog', 'Enter your name:')
if ok:
self.le.setText(str(text)) if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())

QinputDialog

QColorDialog

QColorDialog显示一个用于选择颜色值的对话框。

 # Author:凌逆战
# -*- coding:utf-8 -*- import sys
from PyQt5.QtWidgets import (QWidget, QPushButton, QFrame,QColorDialog, QApplication)
from PyQt5.QtGui import QColor class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI() def initUI(self):
col = QColor(0, 0, 0) # 初始化QFrame颜色为黑色
self.btn = QPushButton('Dialog', self) # 创建Dialog按钮
self.btn.move(20, 20) self.btn.clicked.connect(self.showDialog) # btn信号绑定self.showDialog槽 self.frm = QFrame(self) # 创建一个框架
self.frm.setStyleSheet("QWidget { background-color: %s }"% col.name())
self.frm.setGeometry(130, 22, 100, 100) self.setGeometry(300, 300, 250, 180)
self.setWindowTitle('Color dialog')
self.show() def showDialog(self):
col = QColorDialog.getColor() # 弹出QColorDialog对话框
# 先检查col的值。如果点击的是Cancel按钮,返回的颜色值是无效的。
# 当颜色值有效时,我们通过样式表(style sheet)来改变背景颜色。
if col.isValid():
self.frm.setStyleSheet("QWidget { background-color: %s }"% col.name()) if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())

颜色选择对话框

QFontDialog

 import sys
from PyQt5.QtWidgets import (QWidget, QVBoxLayout, QPushButton,QSizePolicy,
QLabel, QFontDialog, QApplication)
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI() def initUI(self):
vbox = QVBoxLayout() # 创建垂直布局实例 btn = QPushButton('Dialog', self) # 创建按钮Dialog
btn.setSizePolicy(QSizePolicy.Fixed,QSizePolicy.Fixed) # 设置按钮长宽固定 btn.move(20, 20) vbox.addWidget(btn) # 垂直布局增加按钮 btn.clicked.connect(self.showDialog) # clicked信号绑定self.showDialog槽 self.lbl = QLabel('Knowledge only matters', self) # 创建文本标签
self.lbl.move(130, 20) vbox.addWidget(self.lbl) # 垂直布局添加按钮
self.setLayout(vbox) # 设置垂直布局 self.setGeometry(300, 300, 250, 180)
self.setWindowTitle('Font dialog')
self.show() def showDialog(self):
# 弹出字体对话框,getFont()方法返回字体名称和OK参数,
# 如果点击Ok,表明是True,
font, ok = QFontDialog.getFont()
# 改变标签的字体
if ok:
self.lbl.setFont(font) if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())

字体选择对话框

QFileDialog

 # Author:凌逆战
# -*- coding:utf-8 -*- import sys
from PyQt5.QtWidgets import (QMainWindow, QTextEdit,
QAction, QFileDialog, QApplication)
from PyQt5.QtGui import QIcon class Example(QMainWindow):
def __init__(self):
super().__init__()
self.initUI() def initUI(self):
self.textEdit = QTextEdit() # 创建文本编辑实例
self.setCentralWidget(self.textEdit) # 将文本编辑控件设置为窗体中央
self.statusBar() # 设置状态栏 openFile = QAction(QIcon('web.png'), 'Open', self) # 创建事件
openFile.setShortcut('Ctrl+O') # 设置快捷方式
openFile.setStatusTip('Open new File') # 设置状态栏提示
openFile.triggered.connect(self.showDialog) # 触发绑定事件 menubar = self.menuBar() # 创建菜单栏
fileMenu = menubar.addMenu('&File') # 创建File菜单
fileMenu.addAction(openFile) # 添加事件 self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('File dialog')
self.show() def showDialog(self):
# 弹出QFileDialog对话框,第一个字符串参数为对话框的标题,第二个指定对话框的工作目录
# 默认情况下文件刷选器会匹配所有类型的文件(*)
fname = QFileDialog.getOpenFileName(self, 'Open file', '/home')
# 读取文件并将文件内容显示在TextEdit控件
if fname[0]:
f = open(fname[0], 'r') with f:
data = f.read()
self.textEdit.setText(data) if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())

文件选择对话框

PyQt5对话框的更多相关文章

  1. 六、pyqt5对话框——QInputDialog、QColorDialog、QFontDialog、QMessageBox、QFileDialog

    目录:  一.对话框综合示例 二.QDialog 三.QInputDialog 四.QMessageDialog 五.QFileDialog pyqt5的对话框有多种类型,比如输入对话框(QInput ...

  2. PyQt5 对话框示例

    import sys from PyQt5.QtWidgets import * from PyQt5.QtGui import * class Example(QMainWindow): def _ ...

  3. PyQt5标准对话框

    很全的Qt的标准对话框,包含QInputDialog.QColorDialog.QFontDialog.QMessageBox.QOpenFileDialog... 全部是由官网的C++版本,转换成P ...

  4. PyQt5教程——对话框(6)

    PyQt5中的对话框 对话框窗口或对话框是大多数主流GUI应用不可缺少的部分.对话是两个或更多人之间的会话.在计算机应用中,对话框是一个用来和应用对话的窗口.对话框可以用来输入数据,修改数据,改变应用 ...

  5. pyqt5之QColorDialog颜色对话框最简单使用

           设置窗体背景颜色 QWidget.setStyleSheet('QWidget {background-color:#88ab45}') 颜色对话框取得颜色值是十六进制. col=QCo ...

  6. [ PyQt入门教程 ] PyQt5基本控件使用:消息弹出、用户输入、文件对话框

    本文主要介绍PyQt界面实现中常用的消息弹出对话框.提供用户输入的输入框.打开文件获取文件/目录路径的文件对话框.学习这三种控件前,先想一下它们使用的主要场景: 1.消息弹出对话框.程序遇到问题需要退 ...

  7. pyqt5通过文本对话框打开文件

    点击按钮,打开文本对话框,找一人文件,打开并显示内容 QFIleDialog                                                              ...

  8. [PyQt5]文件对话框QFileDialog的使用

    概述选取文件夹 QFileDialog.getExistingDirectory()选择文件 QFileDialog.getOpenFileName()选择多个文件 QFileDialog.getOp ...

  9. 用 eric6 与 PyQt5 实现python的极速GUI编程(系列04)---- PyQt5自带教程:地址簿(address book)

    [引子] 在PyQt5自带教程中,地址簿(address book)程序没有完全实现界面与业务逻辑分离. 本文我打算用eric6+PyQt5对其进行改写,以实现界面与逻辑完全分离. [概览] 1.界面 ...

随机推荐

  1. modprobe lsmod

    modprobe是linux的一个命令,可载入指定的个别模块,或是载入一组相依的模块.modprobe会根据depmod所产生的相依关系,决定要载入哪些模块.若在载入过程中发生错误,在modprobe ...

  2. (转)MapReduce Design Patterns(chapter 6 (part 2))(十二)

    Chain Folding 这是对job 链的一种优化.基本上是一种大体规则:每条记录都会提交给多个mapper,或者给reducer然后给mapper.这种综合处理方法会节省很多读文件和传输数据的时 ...

  3. TF随笔-11

    #!/usr/bin/env python2 # -*- coding: utf-8 -*- import tensorflow as tf my_var=tf.Variable(0.) step=t ...

  4. CS231n课程笔记翻译1:Python Numpy教程

    译者注:本文智能单元首发,翻译自斯坦福CS231n课程笔记Python Numpy Tutorial,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客翻译完成,Flood Sung ...

  5. 深度学习(六十六)生成模型、最大化似然、KL散度

  6. 【IDEA】创建maven项目时,报错[FATAL_ERROR] Cannot start Maven: Cannot find JRE '1.7'

    在使用IDEA使用maven创建springMVC项目时,出现下面的错误,导致无法创建生成正常的springMVC项目结构,而只有一个pom文件: [FATAL_ERROR] Cannot start ...

  7. maven搭建ssm框架是使用最新mysql 6.0jar遇到的问题

    作者:blouc@qq.com本文为作者原创,转载请注明出处:https://www.cnblogs.com/oucbl/p/5940556.html 今天学习SSM框架整合,完成Spring和myb ...

  8. 迫不及待地体验了一把 C#8.0 中的可空引用类型(Nullable Reference)

    在我之前的一篇博客 NullReferenceException,就不应该存在! 中,我吐槽了 C# 中 null 的弊端以及避免 null 的方法:事实上这本都是现代高级语言中极力推崇的做法.Kot ...

  9. 通过以太坊发行代币(token)

    2017年开始,区块链ICO项目层出不穷,市场热度一波更胜一波,很多ICO都是通过以太坊智能合约发行自己的代币(token),具体怎样才能发行代币呢?本文进行具体详细的介绍. 准备工作 以太坊官网ER ...

  10. log4j打印mybatis执行sql,将占位符换成真实的参数输出

    背景: 在我日常码代码的时候,由于对mybatis的动态sql,比较依赖,并且有时候需求复杂,导致sql较长,而且参数众多,当出现问题是,需要将sql,放到navicat里面去执行查看结果,但是对于复 ...