qmainwidown類視窗框架一般包含以下元件:
1、選單欄(qmenubar),乙個主視窗只能有乙個
2、工具欄(q*******)
,可以有多個
3、狀態列(qstatusbar),乙個主視窗只能有乙個
4、中心部件(central widget),乙個主視窗只能有乙個
5、dock部件(qdockwidget,鉚接部件)
1、建立選單欄// qmenubar *bar = menubar(); // 建立選單欄,只有乙個
qmenubar *bar = new qmenubar;
this->setmenubar(bar); //設定選單欄到視窗中
qmenu *filemenu = bar-
>
addmenu
("檔案");
qmenu *editmenu = bar-
>
addmenu
("編輯");
qmenu *viewmenu = bar-
>
addmenu
("檢視");
qmenu *gomenu = bar-
>
addmenu
("前往");
qmenu *bookmarkmenu = bar-
>
addmenu
("書籤");
qmenu *helpmenu = bar-
>
addmenu
("幫助"
);
//新增檔案選單欄新增選項
qaction *newaction = filemenu-
>
addaction
("新建");
qaction *openfileaction = filemenu-
>
addaction
("開啟");
//新增分割線
filemenu-
>
addseparator()
;qaction *closefileaction = filemenu-
>
addaction
("關閉"
)
//建立工具欄
q******* *tbar =
newq*******
(this);
//將工具欄新增到視窗中,預設新增到左邊
add*******
(qt::left*******area, tbar)
;//設定允許左邊和右邊停靠
tbar-
>
setallowedareas
(qt::left*******area | qt::right*******area)
;
//向工具欄新增選項
qaction *content******* = tbar-
>
addaction
("內容");
//新增分割線
tbar-
>
addseparator()
;qaction *index******* = tbar-
>
addaction
("索引");
tbar-
>
addseparator()
;qaction *search******* = tbar-
>
addaction
("查詢"
);
//建立狀態列
qstatusbar *statbar =
newqstatusbar
(this);
//將狀態列放達到視窗中
setstatusbar
(statbar)
;
qlabel *label1 = new qlabel("字數", this);
//將標籤放入狀態列
statbar->addwidget(label1);
qlabel *label2 = new qlabel("頁數", this);
statbar->addpermanentwidget(label2);
視窗可以拖動到任意位置,甚至可以離開主視窗
//鉚接部件(浮動視窗) 可以有很多個
qdockwidget *dock =
newqdockwidget
("鉚接部件"
,this);
this
->
adddockwidget
(qt::bottomdockwidgetarea, dock)
;
//設定核心部件,只能有乙個,這裡設定為一邊可編輯的text
qt應用程式主視窗
qmainwindow視窗可以包含選單欄 工具欄 狀態列 標題欄等,是最常見的視窗形式,可以作為gui程式的主視窗 1 設定選單 setmenubar方法 標頭檔案 qmenubar 2 設定工具欄 add 方法 標頭檔案 q 3 設定可停靠部件 adddockwidget qmainwindow的...
Qt 應用程式固定視窗大小
應用程式框架介紹 應用程式包含按鈕工具欄和背景顯示視窗 中裝載背景的視窗,使用的是qlabel物件 實現應用程式啟動後視窗大小固定不變並且尺寸剛好包含和工具欄。使用 setsizepolicy qsizepolicy fixed,qsizepolicy fixed setminimumsize qs...
Qt 發布應用程式
qt 官方開發環境使用的動態鏈結庫方式,在發布生成的exe程式時,需要複製一大堆 dll,如果自己去複製dll,很可能丟三落四,導致exe在別的電腦裡無法正常執行。因此 qt 官方開發環境裡自帶了乙個工具 windeployqt.exe。以官方 qt 5.8.0 mingw 開發環境為例,從開始選單...