python界面交互PyQt5–消息框(QMessageBox)

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放到工程运行库目录下。并添加环境变量

  • 22
    点赞
  • 98
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
PyQt5的QMessageBox是一种通用的弹出,用于显示消息、警告、错误、提问等等。它可以在图形用户界面中与用户进行交互,并根据用户的选择执行相应的操作。 在PyQt5中使用QMessageBox可以显示不同类型的消息,并且可以自定义按钮的文本。例如,使用QMessageBox的information方法可以显示一个信息,question方法可以显示一个问答,warning方法可以显示一个警告,critical方法可以显示一个危险,about方法可以显示一个关于。 为了让这些按钮显示我们喜欢的中文,可以通过以下两种方式实现: 方式一:使用setButtonText方法设置按钮的文本。例如,使用QMessageBox的setButtonText方法可以设置Yes按钮的文本为"确定",No按钮的文本为"取消"。 方式二:在创建QMessageBox对象时,可以指定按钮的文本。例如,使用QMessageBox的question方法创建一个问答时,可以将按钮的文本设置为中文。 下面是一个使用PyQt5的QMessageBox的示例代码: ```python from PyQt5.QtWidgets import QMessageBox, QWidget, QApplication app = QApplication([]) # 创建一个QWidget作为父类窗口 w = QWidget() # 显示一个退出确定 reply = QMessageBox.question(w, '退出', '确定退出?', QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel, QMessageBox.Cancel) if reply == QMessageBox.Yes: print('退出') app.quit() else: print('不退出') app.exec_() ``` 以上代码创建了一个QWidget对象作为父类窗口,然后使用QMessageBox的question方法显示一个问答,用户可以选择是、否或取消。根据用户的选择,程序会打印相应的输出并退出或继续运行。 希望以上解答能帮到你。如果还有其他问题,请随时提问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python——pyqt5——消息(QMessageBox)](https://blog.csdn.net/weixin_30254435/article/details/95785993)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Pyqt5如何让QMessageBox按钮显示中文示例代码](https://download.csdn.net/download/weixin_38546817/14869947)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [python界面交互PyQt5消息(QMessageBox)](https://blog.csdn.net/qq_41551450/article/details/104947551)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值