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

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

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

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

но я получил:

изображение кнопки

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

2 ответа

Решение

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

btn2.setLayoutDirection(QtCore.Qt.RightToLeft)

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

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

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

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

Другие вопросы по тегам