QT 主視窗大小改變,子視窗大小不能跟隨變化

2021-09-16 22:10:39 字數 860 閱讀 9002

開始使用qt,在mainwindow中動態新增乙個widget的子視窗,想主視窗大小改變的時候,比如最大化。結果子視窗的大小不能改變。從網上查詢資料,說主視窗需要過載

protected:

virtual void resizeevent(qresizeevent *event) override;

然後我乖乖的過載了這個方法。在這個方法裡動態呼叫子視窗的

void selectpage::resizeevent(qresizeevent *event)

}

根據列印資訊,大小都是設定成功了,子視窗也變大了。但是子視窗的布局容器沒有變大。我也手動呼叫了布局容器的設定大小,看起容器的拉伸效果是有了,但是布局容器的可視區域沒有變大。

然後我手動改變水平布局容器的大小,結果

顯示就成這樣,拉伸效果有了,但是可視區域沒有變化。

這個問題其實很簡單,只需要把widget的主節點加上布局就可以了,而且還不需要設定子布局容器的大小。

這樣就正常了。開始學習這個不知道。很容易碰見這樣的2b問題。先在這裡記錄一下。

Vim改變視窗大小

改變視窗大小 window resize ctrl w ctrl w 使得所有視窗 幾乎 等寬 等高,但當前視窗使用 winheight 和 winwidth res ize n res resize ctrl w ctrl w 使得當前視窗高度減 n 預設值是 1 如果在 vertical 之後使...

opencv改變imshow視窗大小,視窗位置

cv2.houghlinesp cv2.namedwindow enhanced 0 cv2.resizewindow enhanced 640 480 cv2.imshow enhanced lines cv2.waitkey 0 建立視窗時候改變下引數就可以滑鼠隨意拖動視窗改變大小啦 cv na...

改變視窗大小,恢復以前的大小

方法一。在onsize訊息事件中處理 最小化 size minimized,最大化 size maximized,還原 size restored,例如 void cmaindlg onsize uint ntype,int cx,int cy if ntype size restored 方法二 ...