Этот пример:
# test1.py
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QHBoxLayout, QVBoxLayout, QPushButton, QRadioButton, \
QGroupBox, QButtonGroup
from PyQt5.Qt import Qt
def main():
app = QApplication([])
mainForm = MainForm()
mainForm.show()
app.exec()
# end function
class MainForm(QWidget):
def __init__(self):
super().__init__()
self.rdoRed = QRadioButton('Red')
self.rdoGreen = QRadioButton('Green')
self.rdoBlue = QRadioButton('Blue')
self.vblColor = QVBoxLayout()
self.vblColor.addWidget(self.rdoRed)
self.vblColor.addWidget(self.rdoGreen)
self.vblColor.addWidget(self.rdoBlue)
self.gbColor = QGroupBox('Choose Color')
self.gbColor.setStyleSheet('QGroupBox:title {'
'subcontrol-origin: padding; }')
self.gbColor.setLayout(self.vblColor)
self.vboxLayout = QVBoxLayout()
self.vboxLayout.addWidget(self.gbColor)
self.setLayout(self.vboxLayout)
# end function
# end class
if __name__ == '__main__':
main()
Рендерится так в Ubuntu 18.04:
Мне бы хотелось Choose Color
текст, в данный момент находящийся чуть выше вершины граничной линии QGroupBox, вместо этого находится на одной линии с вершиной грани QGroupBox, как показано в документации Qt:
Обратите внимание, как Package selection
находится в соответствии с верхней границей QGroupBox, я хотел бы сделать то же самое с заголовком Choose Color
в приведенном выше примере.
Это операционная системное ограничение и что я спрашиваю не возможно? Я использую Ubuntu 18.04.
Или есть параметр setStyleSheet
, который я могу передать для достижения этой цели? Как вы можете видеть в приведенном выше примере, я попытался установить некоторые свойства таблицы стилей для достижения этой цели, но мне не удалось найти такое свойство. Или есть какие-то другие средства, с помощью которых это может быть достигнуто?