如何制作不同大小的 QStackedWidget 的不同页面?

How to make different pages of a QStackedWidget of different sizes?

我有一个 QStackWidget 有 2 页。一页仅包含 2 个 QLineEdit 小部件,另一页包含一个大 QTextEdit。有谁知道如何使一页比另一页大,以便 window 仍然适合每一页?在 Qt Designer 中,QStackWidget 必须采用较大的尺寸才能首先显示 QTextEdit,但是带有 QLineEdit 小部件的页面会太大。

谢谢

您可以将显示页面的大小策略设置为QSizePolicy.Preferred,将其他页面设置为QSizePolicy.Ignored。之后调用 adjustSize 更新尺寸。例如,当您将当前索引设置为显示 page1 :

page1.setSizePolicy(QSizePolicy.Preferred, QSizePolicy.Preferred)
page2.setSizePolicy(QSizePolicy.Ignored, QSizePolicy.Ignored)

stackedWidget.adjustSize()
adjustSize()

当显示另一个页面时,以其他方式设置尺寸政策。