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. Java Double 精度问题总结

    package Demo_1.Test_2; import java.math.BigDecimal; /** * @描述:Java Double 精度问题总结 * @详细描述:使用Java,doub ...

  2. [Python] dict字典的浅复制与深复制

    Python中针对dict字典有两种复制: (1)浅复制:利用 copy() 或者 dict() :复制后对原dict的内部子对象(方括号[]内元素)进行操作时,由浅复制得到的dict会受该操作影响 ...

  3. learn go ifelse

    package main // 参考文档: // https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/05.1.md im ...

  4. Git使用总结(廖雪峰git)

    安装 $ sudo apt-get install git 配置 # 配置用户名和邮箱 $ git config --global user.name "Your Name" $ ...

  5. win8 ie10 debug flex

    win8 ie10 使用flash debug方法: 删除c:\WINDOWS\system32\Macromed\Flash.c:\WINDOWS\SysWOW64\Macromed\Flash里面 ...

  6. HDU1576 A/B

    暴力出奇迹,我就知道没取余那么正当,肯定有什么奇淫怪巧,果然5分钟A掉. #include<cstdio> #include<cstdlib> #include<iost ...

  7. 利用ajax完成项目图册上传删除【实际项目】

    [项目页面效果] [前台jsp页面] jsp的js代码 <script type="text/javascript"> //上传项目图片 function upload ...

  8. BZOJ2694 Lcm 【莫比乌斯反演】

    BZOJ2694 Lcm Description Input 一个正整数T表示数据组数 接下来T行 每行两个正整数 表示N.M Output T行 每行一个整数 表示第i组数据的结果 Sample I ...

  9. Byte.parseByte(String s,int radix)的解释

    1. 由 基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 有下 ...

  10. LeetCode 675. Cut Off Trees for Golf Event

    原题链接在这里:https://leetcode.com/problems/cut-off-trees-for-golf-event/description/ 题目: You are asked to ...