#include
#include
#include
#include
#include
// 1.新增選單:檔案
qmenu *filemenu = ui-
>menubar-
>
addmenu(tr
("檔案(&f)"))
;// 2.新增動作:開啟檔案
qaction *action_new = filemenu-
>
addaction
(qicon
(":/image/images/new.png"),
tr("新建檔案(&n)"))
;// 3.為開啟檔案動作:設定快捷鍵:
action_new-
>
setshortcut
(qkeysequence
("ctrl+n"))
;// 4.獲取工具欄,在工具欄中新增:「新建檔案」動作選單
ui->main*******-
>
addaction
(action_new)
;// 同理
qmenu *editmenu = ui-
>menubar-
>
addmenu(tr
("編輯(&e)"))
;qaction *action_open = editmenu-
>
addaction
(qicon
(":/image/images/open.png"),
tr("開啟檔案(&o)"))
;action_open-
>
setshortcut
(qkeysequence
("ctrl+o"))
;ui-
>main*******-
>
addaction
(action_open)
;
二、建立動作組:並新增包含3個動作選單:左對齊、右對齊、居中
qactiongroup *group =
newqactiongroup
(this);
// 0.建立動作組
qaction *action_l = group-
>
addaction(tr
("左對齊(&l)"))
;// 1.向動作組中新增動作:左對齊
action_l-
>
setcheckable
(true);
// 2.設定動作checkable屬性為true
action_l-
>
setchecked
(true);
// 3.最後指定action_l為選中狀態
qaction *action_r = group-
>
addaction(tr
("右對齊(&r)"))
;action_r-
>
setcheckable
(true);
qaction *action_c = group-
>
addaction(tr
("居中(&c)"))
;action_c-
>
setcheckable
(true);
editmenu-
>
addseparator()
;// 4.向選單中新增間隔器
editmenu-
>
addaction
(action_l)
;// 5.向選單中新增動作:左對齊
editmenu-
>
addaction
(action_r)
;// 6.向選單中新增動作:右對齊
editmenu-
>
addaction
(action_c)
;// 7.向選單中新增動作:居中
三、工具欄中新增其他視窗部件:按鈕,微調框
qtoolbutton *toolbtn =
newqtoolbutton
(this);
// 1.建立qtoolbutton 類物件:toolbtn(工具欄按鈕「顏色」)
ui->main*******-
>
addwidget
(toolbtn)
;// 2.將toolbtn按鈕新增到工具欄
toolbtn-
>
settext(tr
("顏色"))
;// 3.設定toolbtn按鈕名稱
qmenu *colormenu =
newqmenu
(this);
// 4.建立乙個選單 (colormenu)
colormenu-
>
addaction(tr
("紅色"))
;// 新增動作選單:紅色
colormenu-
>
addaction(tr
("綠色"))
;// 新增動作選單:綠色
toolbtn-
>
setmenu
(colormenu)
;// 5.將選單(colormenu)新增進工具欄按鈕(toolbtn「顏色」)中
toolbtn-
>
setpopupmode
(qtoolbutton:
:menubuttonpopup)
;// 設定選單彈出模式
qspinbox *spinbox =
newqspinbox
(this);
// 6.建立qspinbox
ui->main*******-
>
addwidget
(spinbox)
;// 7.向工具欄新增qspinbox部件
四、生成狀態列
//ui->statusbar->showmessage(tr("歡迎使用多文件編輯器"), 5000); // 1.顯示臨時訊息,顯示2000毫秒即2秒
qlabel *normal_label =
newqlabel
(this);
// 2.建立標籤(用於生成正常訊息)
normal_label-
>
setframestyle
(qframe:
:box | qframe:
:sunken)
; normal_label-
>
settext
("hahahaha");
ui->statusbar-
>
addwidget
(normal_label)
;// 3.新增標籤至狀態列(用於生成正常訊息,可能被臨時訊息覆蓋)
qlabel *permanent =
newqlabel
(this);
// 4.建立標籤(用於生成永久訊息)
permanent-
>
setframestyle
(qframe:
:box | qframe:
:sunken)
;// 5.設定標籤樣式並顯示資訊,
permanent-
>
settext
("www.qter.org");
ui->statusbar-
>
addpermanentwidget
(permanent)
;// 6.然後將其以永久部件的形式新增到狀態列
多文件編輯器:新建乙個文字編輯器部件
qtextedit *edit =
newqtextedit
(this);
// 1.以文字編輯器為中心部件
qmdisubwindow *child = ui-
>mdiarea-
>
addsubwindow
(edit)
;// 2.使用qmdiarea::addsubwindow()函式建立子視窗
child-
>
setwindowtitle(tr
("多文件編輯器子視窗"))
;child-
>
show()
;
QT5 學習筆記一
一 訊號和槽機制 signal slot qt提供了訊號和槽機制用於完成介面操作的響應,是完成任意兩個qt物件之間的通訊機制。訊號會在某個特定情況或動作下被觸發,槽是等同於接收並處理訊號的函式。訊號與槽機制的連線方式 1 乙個訊號可以與另乙個訊號相連 2 同乙個訊號可以與多個槽相連 3 同乙個槽可以...
QT5 學習筆記01
第乙個例項,計算圓的面積 利用qt5 designer實現 第一次例項比較簡單,掌握建立專案的方法以及槽函式的用法即可。使用到的常用函式 1 qstring toint bool ok nullptr,int base 10 第一引數為ok位址,表明轉換成功與否,第二個引數進製 123 123 2 ...
QT5 學習筆記02
第二個例項,計算圓的面積 利用 實現 建立專案時不選擇建立介面選項 建立好後專案中不含有ui designer 物件的位置用布局管理器控制 如 qgridlayout mainlayout 關於槽的相關資料 主視窗中的 如下 include dialog.h include qgridlayout ...