Ich arbeite an einem PyQt5-Projekt, würde aber gerne C++/Qt-Antwort lesen, weil C++ - Lösungen auch auf Python funktionieren.Wie kann der Text den gesamten QLabel-Bereich füllen?
Ich habe ein MainWindow mit einem horizontalen Layout und einem QLabel darin.
Die Größe meiner QLabel-Richtlinie ist "Expanding", daher wird mein gesamtes Fenster von QLabel ausgefüllt.
Der von QLabel angezeigte Text ändert jedoch nicht seine Größe. Ich würde mir wünschen, dass der Text wächst, wenn das Fenster wächst, und so groß wie möglich sein sollte, im Rahmen der QLabel-Größe.
Ich habe von QWidget::adjustSize()
gehört aber konnte nicht herausfinden, wie man es benutzt. Die Option scaledContents
für meine QLabel auf QtDesigner tut nichts, also denke ich, dass es nur für die Verwendung von Pixmap nützlich ist.
Im Moment ist meine Lösung, die resizeEvent()
Methode meines Fensters neu zu implementieren und die Schriftgröße meines Etiketts mit setFont()
zu ändern. Aber ich denke, dass es eine einfachere Lösung geben muss. Darüber hinaus ist meine resizeEvent()
Methode nicht sehr gut, weil ich eine lineare Beziehung zwischen myWindowWidth* myWindowHeight
und myTextFontSize
mache, daher, wenn nur myWindowWidth
erhöhen, myTextFontSize
erhöht und Kräfte myWindowHeight
zu erhöhen, was schlecht ist.