分別以qmainwindow和qwidget為基類建立工程;
qt會自動建立乙個以所選基類為父類的自定義類,自動建立ui檔案,供使用者來使用。**模板也是完全相同,唯一不同的是乙個隱含的檔案:
qwidget下為 #include 「ui_widget.h」
qmainwindow下為 #include 「ui_mainwindow.h」
檢視該檔案,按住ctrl+滑鼠左鍵自動跳轉,提示失敗。因為這個檔案是在編譯時qt自動建立的,在工程建立完成時還不存在。
編譯工程後,發現可以跳轉到該**件。比較這兩個檔案,主要差異在於下面幾行**:
menubar =
newqmenubar
(mainwindow)
;menubar-
>
setobjectname
(qstringliteral
("menubar"))
;mainwindow-
>
setmenubar
(menubar)
;main******* =
newq*******
(mainwindow)
;main*******-
>
setobjectname
(qstringliteral
("main*******"))
;mainwindow-
>
add*******
(main*******)
;centralwidget =
newqwidget
(mainwindow)
;centralwidget-
>
setobjectname
(qstringliteral
("centralwidget"))
;mainwindow-
>
setcentralwidget
(centralwidget)
;statusbar =
newqstatusbar
(mainwindow)
;statusbar-
>
setobjectname
(qstringliteral
("statusbar"))
;mainwindow-
>
setstatusbar
(statusbar)
;
qmainwindow中在setui時自動為使用者建立了乙個選單欄、工具欄、中心視窗和狀態列。而qwidget是沒有這幾點的。 使用QMainWindow進行布局
推薦於2016 06 29 19 12 54 最佳答案 我以前給qwidget或者qdialog設定布局的時候方式很簡單。建立好乙個布局 mainlayout,然後不停地把各個控制項往mainlayout裡面放,最後呼叫setlayout mainlayout 就行了。可是今天在qmainwindo...
QT基礎知識(七)QMainWindow
每乙個程式都有乙個主使用者介面,其他功能都是圍繞主視窗進行的,比如qmainwindow就是qt開發主視窗的基類。比如 通過檢視qt助手,如下 menu bar 選單欄 s 工具欄 dock widgets 懸浮視窗顯示區 central widget 中心主視窗顯示區域 status bar 底部...
QT筆記5 主介面類QMainWindow
qmainwindow為主視窗,包含選單欄 工具欄 狀態列 視窗等部件,繼承自qwidget。qmainwindow為應用程式的使用者介面提供了乙個基本的框架,當我們需要建立乙個功能全面應用程式視窗時一般使用它,如果臨時彈個框或者只需要簡單互動視窗用qdialog就行了。布局圖如下所示 menuba...