When using setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) in Pyside6, QPushButtons react when expanding the window and become bigger, but QRadioButtons remain the same.
I can´t post images because Stakoverflow says "You need at least 10 reputation to post an image" and I have 9 reputation :(, I´ll edit when I reach 10.
Here the code, in case you want to give it a try:
from PySide6.QtWidgets import (
QLabel,
QPushButton,
QSizePolicy,
QHBoxLayout,
QVBoxLayout,
QWidget,
QRadioButton,
QSpacerItem
)
import sys
from PySide6.QtWidgets import QApplication
class ExampleWidget(QWidget):
def __init__(self):
super().__init__()
self.button1 = QPushButton("Example1")
self.button2 = QPushButton("Example2")
self.button3 = QPushButton("Example3")
self.button4 = QPushButton("Example4")
self.button1.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.button2.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.button3.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.button4.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
widget_layout_buttons = QVBoxLayout()
widget_layout_buttons.addWidget(self.button1)
widget_layout_buttons.addWidget(self.button2)
widget_layout_buttons.addWidget(self.button3)
widget_layout_buttons.addWidget(self.button4)
widget_layout_options = QVBoxLayout()
self.selection_label = QLabel("Choose one:")
self.selection_label.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.option1 = QRadioButton("Option 1")
self.option2 = QRadioButton(
"Option 2")
self.option3 = QRadioButton("Option 3")
self.option4 = QRadioButton("Option 4")
self.option1.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.option2.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.option3.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
self.option4.setSizePolicy(
QSizePolicy.Expanding, QSizePolicy.Expanding)
widget_layout_options.addWidget(self.selection_label)
widget_layout_options.addWidget(self.option1)
widget_layout_options.addWidget(self.option2)
widget_layout_options.addWidget(self.option3)
widget_layout_options.addWidget(self.option4)
merged_options_buttons = QHBoxLayout()
merged_options_buttons.addLayout(widget_layout_buttons)
spacer = QSpacerItem(20, 40, QSizePolicy.Expanding,
QSizePolicy.Expanding)
merged_options_buttons.addItem(spacer)
merged_options_buttons.addLayout(widget_layout_options)
self.setLayout(merged_options_buttons)
app = QApplication(sys.argv)
window = ExampleWidget()
window.show()
app.exec()