我正在研究一個PyQt5項目,但也很樂意閱讀C++/Qt的答案,因爲C++解決方案也可能在Python上工作。如何讓文字填充所有QLabel的空間?
我有一個水平佈局的MainWindow和一個QLabel。
我的QLabel的尺寸政策是「展開」,因此我所有的窗口都由QLabel填充。
但是,由我的QLabel顯示的文本不會更改其大小。我希望在窗口增長時文本會增長,並且儘可能大,只限於QLabel大小。我聽說QWidget::adjustSize()
,但無法弄清楚如何使用它。 QtDesigner上QLabel的選項scaledContents
沒有任何作用,所以我想這隻適用於使用pixmap。
目前,我的解決方案是重新實現我的窗口的resizeEvent()
方法,並更改我的標籤的字體大小爲setFont()
。但我認爲必須有一個更簡單的解決方案。此外,我的方法不是很好,因爲我在myWindowWidth* myWindowHeight
和myTextFontSize
之間做了線性關係,因此當只有myWindowWidth
增加時,myTextFontSize
增加,迫使myWindowHeight
增加,這是不好的。