2009-03-29 3 views
3

Я использую только Qt (хотя PyQt), и я не получаю значки, когда я звоню, например. QMessageBox.warning(). Есть ли способ использовать значки платформы по умолчанию? В настоящее время я использую более полный конструктор QMessageBox и вызываю setIconPixmap.Как использовать значки по умолчанию с qt

+0

Опубликовать код, вам не нужно устанавливать pixmap для отображения значка предупреждения. Это на Windows/Mac/Linux? –

+0

Извините, я потерял оригинал, но это было просто. Используя ваш, он не работает. – gatoatigrado

ответ

1

Я не слишком хорошо знаком с использованием Qt через Python или с помощью QMessageBox. Однако быстрый взгляд на документацию подразумевает, что предупреждение будет использовать значок предупреждения, который должен быть значками по умолчанию для платформы, если они не были изменены. Пробовали ли вы просматривать систему отслеживания ошибок Qt, чтобы убедиться, что это ошибка? Или отправить запрос об ошибке/функции?

4

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

из приведенной выше ссылке:

QMessageBox поддерживает четыре предопределенных уровней серьезности сообщений, или типы сообщений, которые действительно отличаются только в предопределенной иконе каждый из них шоу. Укажите один из четырех предопределенных типов сообщений, установив свойство значка на одну из предопределенных значков.

так что вы должны использовать конструктор 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

, например, вы можете передать этот параметр для иконки: QMessageBox :: Предупреждение

HTH! приветствует

1

Я не знаю, как вы написали ваше использование окна сообщения, но вот как я использую его:

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

Если это не создает значок предупреждений в окне сообщения, то вам может потребоваться обновить PyQt до последней версии, поскольку в прошлом я испытывал небольшие ошибки, подобные некоторым версиям PyQt.

+0

Я сделал, только сегодня ... есть, вероятно, библиотека для значков, которые я не установил. Пожалуйста, не беспокойтесь об этом слишком много, если вы уже не знаете (или являетесь qt dev); для меня это не проблема. приветствия, Николас – gatoatigrado

Смежные вопросы