子窗體全屏顯示及恢復

2021-10-05 23:18:53 字數 946 閱讀 9110

ui->widget->setwindowflags(qt::dialog);

ui->widget->showfullscreen();

ui->widget->layout()->setmargin(0);

1.將該窗體恢復型別為qt::subwindow

2.呼叫show方法(如果不呼叫會被隱藏)

ui->widget->setwindowflags(qt::subwindow);

//還原為子視窗模式後需要呼叫show方法,否則會不顯示

ui->widget->show();

注意:在這裡會有乙個問題,還原為子窗體後顯示,可能會出現大小的問題(即大小不能恢復到原來的大小)

有三種解決方式:

先呼叫ui->widget->shownormal(),這樣就會還原為原來的大小。

ui->widget->shownormal();

ui->widget->setwindowflags(qt::subwindow);

//還原為子視窗模式後需要呼叫show方法,否則會不顯示

ui->widget->show();

注意:這種方式一定要注意在還原為子視窗之後還需要再次呼叫show方法,否則會被隱藏,這種方式還有乙個缺點,螢幕上會閃現一下還原原來大小的視窗,體驗感不太好。

全屏顯示及恢復顯示的時候都呼叫一下resize()方法區設定視窗的大小。

在圖中可以看到將子窗體和buttons進行了柵格布局,因此在恢復子窗體的時候,會自動調整大小,不需要手動設定,也不會出現遮擋按鈕、大小無法恢復的問題。

個人最喜歡第三種方式,方便。

c 全屏顯示窗體

this.formborderstyle 獲取或設定邊框的樣式 this.windowstate 獲取或設定窗體的窗體狀態 this.formborderstyle system.windows.forms.formborderstyle.fixedsingle 摘要 無邊框。none 0,摘要 固...

Qt子視窗全屏顯示

qt全屏顯示函式 window.showfullscreen qt最大化顯示函式 window.showmaximized qt最小化顯示函式 window.showminimized qt固定尺寸顯示函式 window.resize x,y 子視窗全屏顯示 將要全屏的qt主視窗中的子視窗呼叫函式 ...

Qt子視窗全屏顯示

子視窗全屏顯示 將要全屏的qt主視窗中的子視窗呼叫函式 setwindowflags qt dialog 然後呼叫 showfullscreen 函式將子視窗全屏顯示。也就是先將子視窗全屏顯示前設定為頂級視窗,然後進行全屏顯示。應為 showfullscreen 函式只對頂級視窗有效。如果要還原為普...