PyQt4 QPushButton текст и выравнивание значков

Я хочу создать кнопку с текстом и значком, например Далее =>, и я использую QPushButton.

Я попытался сделать следующее:

btn2 = QtGui.QPushButton('Next',self)
btn2.setIcon(QIcon(QPixmap("next.png")))

но я получил:

картинка кнопки

Я хочу, чтобы стрелка (значок) отображалась справа от текста ("Далее") или ниже. Пожалуйста помоги.


person user5435739    schedule 10.06.2016    source источник


Ответы (2)


Вы можете использовать setLayoutDirection()

btn2.setLayoutDirection(QtCore.Qt.RightToLeft)

Иногда это может выглядеть немного странно, и вам придется поиграть с размером кнопки и полями, чтобы она выглядела правильно.

person Brendan Abel    schedule 10.06.2016

По какой-то причине setLayoutDirection() у меня не сработало (PyQt5). Я использую следующий вариант:

btn2.setStyleSheet("QPushButton { text-align: left; }")

Это работает очень хорошо. Дополнительные параметры таблиц стилей можно найти по этой ссылке: http://doc.qt.io/qt-5/stylesheet-reference.html

person K.Mulier    schedule 13.04.2017