PyQt: Могу ли я сделать кнопку на панели инструментов со значком и текстом?

Я изучаю PyQt, играя с примерами. В данном случае я играю с примером веб-браузера, который находится по адресу \Python26\Lib\site-packages\PyQt4\examples\activeqt\webbrowser.

Демонстрация делает что-то действительно странное, если вы добавите одну строку для установки свойства текста значка QAction.

Вот пример кода изменения, которое я пробовал:

self.actionBack = QtGui.QAction(MainWindow)
self.actionBack.setIcon(QtGui.QIcon(":/icons/image1.xpm"))
self.actionBack.setObjectName("actionBack")
# added this line:
self.actionBack.setIconText("Back")

Однажды я попробовал это, и вся панель инструментов стала пустой. Я не могу воспроизвести это, теперь у меня нет эффекта от этого изменения одной строки.

Я пытаюсь понять, что делать с QAction, чтобы на панели инструментов был текст на кнопке рядом с изображением, или это можно сделать вообще так? Есть ли другой способ сделать так, чтобы на панели инструментов был текст и значок?


person Warren P    schedule 20.10.2011    source источник


Ответы (1)


Попробуйте установить стиль кнопки на панели инструментов, на которую добавляются действия:

self.tbNavigate.setToolButtonStyle(QtCore.Qt.ToolButtonTextUnderIcon)
...
self.actionBack.setIconText("Back")
person ekhumoro    schedule 20.10.2011
comment
Это работает отлично. За один день я наделал достаточно хакерских усилий, чтобы ощутить вкус PyQt, и мне это нравится! :-) Здорово. - person Warren P; 22.10.2011