要實現子控件隨父控件大小改變,可以使用Qt的布局管理器(Layout)來實現。布局管理器可以自動調整子控件的大小和位置,使其適應父控件的大小變化。
以下是一種常見的實現方法:
// 在父控件的構造函數中創建布局對象
QHBoxLayout* layout = new QHBoxLayout(this);
// 創建子控件
QWidget* childWidget = new QWidget(this);
// 將子控件添加到布局對象中
layout->addWidget(childWidget);
// 設置父控件的布局對象
setLayout(layout);
這樣,當父控件的大小變化時,布局管理器會自動調整子控件的大小和位置,使其適應父控件的大小變化。
另外,還可以通過設置子控件的大小策略(size policy)來進一步控制子控件隨父控件大小改變的方式。可以使用QWidget的setSizePolicy函數來設置子控件的大小策略。具體的大小策略可以參考Qt的文檔。