Можно ли расположить несколько элементов в названии QGroupBox?

Можно ли расположить несколько элементов в названии QGroupBox?
Причём разного типа, т.е. не только строка.
Должно быть примерно так: "<= GroupBoxName =>"

from PySide6.QtWidgets import Widget,QLabel,QApplication,QVBoxLayout,QGroupBox,QPushButton


class GroupboxTest(QWidget):
    def __init__(self, parent=None):
        super(GroupboxTest, self).__init__(parent)
        groupbox_name = 'GroupboxName'
        groupbox_button_to_left = QPushButton('<=')          #  1
        groupbox_button_to_right = QPushButton('=>')         #  2
        groupbox = QGroupBox(groupbox_name)
        vbox = QVBoxLayout()
        label1 = QLabel('111')
        label2 = QLabel('222')
        label3 = QLabel('333')
        vbox.addWidget(label1)
        vbox.addWidget(label2)
        vbox.addWidget(label3)
        groupbox.setLayout(vbox)
        vbox1 = QVBoxLayout()
        vbox1.addWidget(groupbox)
        self.setLayout(vbox1)

if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
    w = GroupboxTest()
    w.show()
    sys.exit(app.exec())

Ответы (1 шт):

Автор решения: S. Nick

Попробуйте так:

from PyQt5.QtWidgets import (QWidget, QLabel, QApplication, QVBoxLayout,
    QGroupBox, QPushButton, QToolButton)
from PyQt5.QtCore import Qt, QSize
from PyQt5.QtGui import QFont, QIcon
    

class GroupboxTest(QWidget):
    def __init__(self, parent=None):
        super(GroupboxTest, self).__init__(parent)

        groupbox_name = '   GroupboxName   '
        self.groupbox = QGroupBox(title=groupbox_name, alignment=Qt.AlignHCenter)

        self.button_to_left = QToolButton(self.groupbox, text='left')            #  1
        self.button_to_left.setToolButtonStyle(Qt.ToolButtonIconOnly)
        self.button_to_left.setIcon(QIcon("img/left.png"))
        self.button_to_left.setIconSize(QSize(22, 22))
        self.button_to_left.setFixedSize(QSize(25, 25))
        self.button_to_left.clicked.connect(
            lambda: print(self.button_to_left.text()))
        
        self.button_to_right = QToolButton(self.groupbox, text='right')          #  2
        self.button_to_right.setIcon(QIcon("img/right.png"))
        self.button_to_right.setIconSize(QSize(22, 22))
        self.button_to_right.setFixedSize(QSize(25, 25))
        self.button_to_right.clicked.connect(
            lambda: print(self.button_to_right.text()))
        
        label1 = QLabel('111')
        label2 = QLabel('222')
        label3 = QLabel('333')

        vbox = QVBoxLayout(self.groupbox)
        vbox.addWidget(label1)
        vbox.addWidget(label2)
        vbox.addWidget(label3)

        vbox1 = QVBoxLayout(self)
        vbox1.addWidget(self.groupbox)
        
    def resizeEvent(self, event):
        w = self.groupbox.size().width()
        x = (w - 182) / 2
        self.button_to_left.move(x, -1)
        
        x = (w - 182) / 2 + 157
        self.button_to_right.move(x, -1)        


QSS = '''
QToolButton {
    background-color: transparent;
    border: none
}
QToolButton::hover {
    background-color: rgb(214, 222, 246)
}
'''


if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
#    app.setStyle("Fusion")                                     # <--- попробуйте
    app.setStyleSheet(QSS)
    app.setFont(QFont("Bahnschrift SemiBold", 12, QFont.Bold))
    w = GroupboxTest()
    w.show()
    sys.exit(app.exec())

введите сюда описание изображения

введите сюда описание изображения


left.png

введите сюда описание изображения

right.png

введите сюда описание изображения

→ Ссылка