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