Wie kann ich beide Seiten gleich halten, ohne explizite (maximale) Pixelbreiten festzulegen?
Hier ist ein Minimalbeispiel:
Code: Select all
from PyQt6 import QtWidgets
import sys
class MainWindow(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
layout = QtWidgets.QHBoxLayout()
widget_left = QtWidgets.QLabel()
widget_left.setText("Left: long text without linebreaks")
widget_left.setLineWidth(1)
widget_left.setFrameStyle(QtWidgets.QFrame.Shape.Box)
layout.addWidget(widget_left)
widget_right = QtWidgets.QLabel()
widget_right.setText("Right")
widget_right.setLineWidth(1)
widget_right.setFrameStyle(QtWidgets.QFrame.Shape.Box)
layout.addWidget(widget_right)
widget = QtWidgets.QWidget()
widget.setLayout(layout)
self.setCentralWidget(widget)
self.setFixedSize(300,100)
app = QtWidgets.QApplication(sys.argv)
window = MainWindow()
window.show()
app.exec()

Wie Sie sehen können, haben links und rechts nicht die gleiche Breite.
Ich habe auch QGridLayout mit dem gleichen Ergebnis ausprobiert. Ich habe verschiedene SizePolicies ausprobiert, konnte aber nicht das gewünschte Ergebnis erzielen.
 Mobile version
 Mobile version