如何使用qt的默认图标

时间:2009-03-29 18:55:21

标签: qt qt4 pyqt pyqt4 kde

我只使用Qt(虽然是PyQt)但是当我打电话时我没有得到图标QMessageBox.warning()。有没有办法使用平台的默认图标?目前我正在使用更完整的QMessageBox构造函数并调用setIconPixmap。

3 个答案:

答案 0 :(得分:4)

http://doc.qt.io/qt-5/qmessagebox.html

来自以上链接:

QMessageBox支持四种预定义的消息严重性级别或消息类型,它们实际上只在它们各自显示的预定义图标中有所不同。通过将icon属性设置为其中一个预定义图标,指定四种预定义消息类型之一。

所以你应该使用QMessageBox构造函数:

QMessageBox ( Icon icon, const QString & title, const QString & text, StandardButtons buttons = NoButton, QWidget * parent = 0, Qt::WindowFlags f = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint )

您可以使用以下图标之一:

http://doc.qt.io/qt-5/qmessagebox.html#Icon-enum

例如,您可以为icon:QMessageBox :: Warning

传递此参数

HTH! 招呼

答案 1 :(得分:1)

我不太熟悉通过Python使用Qt或使用QMessageBox。但是,快速浏览文档意味着警告会使用警告图标,如果没有更改,它应该是平台的默认图标。您是否尝试过查看Qt的错误跟踪系统以查看它是否是一个错误?或者提交错误/功能请求?

答案 2 :(得分:1)

我不确定您是如何编写消息框的用法的,但以下是我如何使用它:

from PyQt4 import QtGui
QtGui.QMessageBox.warning(parent, dialogTitle, dialogText)

如果这不会在您的消息框中产生警告图标,那么您可能需要考虑将PyQt升级到最新版本,因为我在过去经历过一些PyQt版本的小错误。