PySide Qt: Automatisches vertikales Wachstum für TextEdit Widget und Abstand zwischen Widgets in einem vertikalen Layout

Ich muss zwei Probleme mit meinem Widget oben lösen.

Ich möchte in der Lage sein, den Abstand zwischen den im Bild gezeigten Post-Widgets zu definieren (sie sehen in Ordnung aus, aber ich möchte wissen, dass es fertig ist).Ich möchte die Textänderungen vertikal vergrößern, basierend auf der enthaltenen Textmenge, ohne sie horizontal zu vergrößern.

Für 1 lautet der Code, der die Widgets auffüllt, wie folgt:

self._body_frame = QWidget()
self._body_frame.setMinimumWidth(750)
self._body_layout = QVBoxLayout()
self._body_layout.setSpacing(0)
self._post_widgets = []
for i in range(self._posts_per_page):
    pw = PostWidget()
    self._post_widgets.append(pw)
    self._body_layout.addWidget(pw)

    self._body_frame.setLayout(self._body_layout)

SetSpacing (0) bringt die Dinge nicht näher, SetSpacing (100) erhöht sie jedoch.

bearbeiten

(für Frage 2) Ich habe dies nicht erwähnt, möchte aber, dass das übergeordnete Widget eine vertikale Bildlaufleiste hat.

Ich habe meine eigene Frage beantwortet, aber sie ist wortreich und basiert auf Ursache und Wirkung. Eine richtig gut geschriebene Antwort im Tutorial-Stil, die beide Punkte anspricht, erhält das Kopfgeld: D

bearbeiten 2

Mit meiner eigenen Antwort unten habe ich das Problem gelöst. Ich werde jetzt meine eigene Antwort annehmen.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage