1、常用函数
函数原型:
# 信息框
QMessageBox.information(self, '框名', '内容', 按钮s, 默认按钮)
# 问答框
QMessageBox.question(self, '框名', '内容', 按钮s, 默认按钮)
# 警告框
QMessageBox.warning(self, '框名', '内容', 按钮s, 默认按钮)
# 危险框
QMessageBox.ctitical(self, '框名', '内容', 按钮s, 默认按钮)
# 关于框
QMessageBox.about(self, '框名', '内容')
实例:
from PyQt5.QtWidgets import QMessageBox
from PyQt5.QtWidgets import QWidget, QApplication
app = QApplication(sys.argv) # 所有pyqt5必须创建一个QApplication对象
w = QWidget() # 没有父类的widget将被作为窗口使用
# 退出确定框
reply = QMessageBox.question(w, '退出', '确定退出?', QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel, QMessageBox.Cancel)
if reply == QMessageBox.Yes:
print('退出')
sys.exit(app.exec_())
else:
print('不退出')
2、自定义消息框
- 自定义消息框按钮
- 自定义消息图标
- 自定义消息框位置
# 创建一个问答框,注意是Question
self.box = QMessageBox(QMessageBox.Question, '退出', '确定退出?')
# 添加按钮,可用中文
yes = self.box.addButton('确定', QMessageBox.YesRole)
no = self.box.addButton('取消', QMessageBox.NoRole)
# 设置消息框中内容前面的图标
self.box.setIcon(1)
# 设置消息框的位置,大小无法设置
self.box.setGeometry(500, 500, 0, 0)
# 显示该问答框
self.box.show()
if self.box.clickedButton() == yes:
print('退出')
else:
print('不退出')
QT程序打包Qt5Core.dll问题
这种问题一般是版本不一致导致。
可以这样:把你运行所对应的qt5core.dll
放到工程运行库目录下。并添加环境变量