QT信号与槽-启动系统程序以及相关控件介绍
1.1 創(chuàng)建一個繼承至QWidget的項目。
1.2 設計界面,分析界面采用的布局方式。
- 首先,每行控件采用水平布局方式,第三行為了使控件靠右,前面添加一個占位控件。
- 三行采用垂直平局;
- 選中控件,通過右鍵可以控件的布局方式;
1.3 為按鈕添加響應函數(shù),即槽,選中“確定”按鈕,右鍵轉(zhuǎn)到槽,即可添加槽。
啟動進程,需要通過QProcess來創(chuàng)建進程,然后啟動系統(tǒng)中某程序。
1.4 當按下Enter鍵是,滿足相同的功能,啟動程序,可以在Widget的構(gòu)造函數(shù)中,通過connect來實現(xiàn)。
connect用來連接兩個對象,一個對象發(fā)出信號,另一個對象處理該信號。
通過查看QLineEdit控件的信號,可知當按下Enter鍵后會觸發(fā)returnPressed()信號,則可以將該信號與控件的槽函數(shù)進行綁定,則可以實現(xiàn)相同功能。
1.5 相關(guān)知識介紹
(1) explicit關(guān)鍵字,只能用于修飾只有一個參數(shù)的類構(gòu)造函數(shù), 表明該構(gòu)造函數(shù)是顯示的, 而關(guān)鍵字implicit, 意思是隱藏的,類構(gòu)造函數(shù)默認情況下即聲明為implicit(隱式)。 當多參數(shù)的構(gòu)造函數(shù)除第一個參數(shù)外,其他參數(shù)都有默認值,explicit關(guān)鍵字也可以生效。
(2) private slots:表示定義一個槽函數(shù)。SLOT和SIGNAL分別表示槽和信號。
(3) Q_OBJECT:
信號和槽是Qt應用開發(fā)的基礎,它可是將兩個毫無關(guān)系的對象連接在一起,槽和普通的C++函數(shù)是一樣的,只是當它和信號連接在一起后,當發(fā)送信號的時候,槽會自動被調(diào)用,只有加入了Q_OBJECT,你才能使用QT中的signal和slot機制。
(4) Ui::Widget *ui;
ui就是界面對象,通過構(gòu)造函數(shù)中的ui->setupUi(this);來進行實例化。
1.6 List Widget組件是從List View繼承而來,其他的類似,一般我們直接使用List Widget控件。
1.7 主要控件介紹
-
布局控件:包括水平、垂直布局,網(wǎng)格布局,Form布局等;
-
按鈕:都是從QAbstractButton繼承而來;
-
視圖控件:列表視圖,樹視圖,列視圖;
-
容器控件:主要用來容納其他控件,如GroupBox,Scroll Area(可滾動的區(qū)域),ToolBox(頁面的展開與收縮),TabWidget(標簽選項卡控件),Stacked Widget(具有切換頁面的小三角功能),MdiWidget(在同一窗口可以顯示多個),Dock Widget(停靠窗口);
-
輸入控件:Combo Box(下拉列表框),Font Combo Box(字體選擇框),Text Edit(多文本編輯器,可設置字體的顏色等),Plain Text Edit(純文本編輯器,不能改變字體顏色等),Dial(圓盤調(diào)節(jié)控件)
-
顯示控件:文本瀏覽器,進度條,網(wǎng)頁瀏覽器(QWebView)等
1.8 Qt Creator相關(guān)功能介紹
通過上面的按鈕,可是切換控件編輯模式和信號與槽編輯模式,可以直接編輯控件之間信號與槽的對應關(guān)系;
通過Qt Creator的幫助文檔,可以查看相應類包含的函數(shù),信號等,以及使用示例可以幫助我們快速的開發(fā),一個信號可以指向多個槽函數(shù),一個槽函數(shù)可以被多個信號相應;
總結(jié)
以上是生活随笔為你收集整理的QT信号与槽-启动系统程序以及相关控件介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 读取bmp格式数据--实践思考
- 下一篇: FTP协议、电子邮件系统与Telnet远