一個應用程序主窗口框架一般包含有:
1..菜單欄。最上面一欄。
2..工具欄。一般是第二欄,而且是可以移動的。
3..中心部件。用於顯示主要功能。
4..Dock部件。通常稱爲停靠窗口,因爲可以停靠在中心部件周圍,相當於ps裏面的工具箱
5..狀態欄。在窗口最下面一欄就是狀態欄。
如何使用QT創建一般形式的窗口?
步驟:
1. 首先新建一個新的QT項目,.ui文件的基類爲MainWindows。
2. 建立好項目之後,進入設計模式,在主設計區中左上角的“在這裏輸入”修改爲”文件(&F)”。如圖:
其中需要注意的是:括號爲英文狀態下的括號,&F被稱爲加速鍵,表示在程序運行的時候可以按Alt+F激活該菜單。
3. 完成上述操作之後,點擊文件,在文件裏的“在這裏輸入”改爲”新建文件夾(&N)”,得到如下的截圖:
這個時候運行代碼的結果是:
初步界面已經實現。
4. 使用資源來替換圖片。
第一步,添加Qt資源文件。
第二步,添加資源。在項目外,新建一個Image文件夾,然後再裏面添加兩張圖片1.jpg,2.jpg。
回到Qt Creator,然後打開剛纔新建的.qrc文件,右鍵選擇Add Existing Directory.
然後在選擇框下面只選擇1.jpg,2.jpg圖片。如下:
確定完之後.qrc文件就會多出這些東西。
然後CTRL+S保存之前的操作。
第三步,使用圖片。雙擊中間下面的對象名稱進入動作編輯對話框,然後設置
然後選擇圖標右邊的選擇資源選擇對應的圖片。
如果要設置快捷鍵也可以在Shortcut裏面設置快捷鍵。
最後確定保存,運行。
可以看到圖標已經在上面了。
也可以使用代碼來實現創建菜單:
頭文件添加#include<QMenu>
QMenu*qm=ui->menuBar->addMenu("編輯(&E)");
//往文件這個菜單裏面添加Aciton(打開文件)
QAction*action_Open=ui->menu_F->addAction(QIcon(":/Images/ /1.jpg"),"打開文件(&O)");
action_Open->setShortcut(QKeySequence("Ctrl+O"));//添加快鍵
ui->mainToolBar->addAction(ui->action_New);//添加工具欄,新建文件
ui->mainToolBar->addAction(action_Open);//添加工具欄,打開文件
PS:這裏需要十分注意的是,Qicon裏面的地址需要加冒號。
最後運行的結果:
5. 設置信號槽。如果一個菜單點擊了沒有任何反應,那麼這個菜單也是沒有任何用處的。
這裏帶你如何設置槽。
先在窗口中添加一個MdiArea部件,作爲響應菜單執行的載體。
然後在Action編輯器中的“新建文件”動作上右鍵轉到槽,選擇triggered()觸發信號,確定之後轉到該信號槽的定義處。
需要添加頭文件:
#include<QTextEdit>
#include<QMdiSubWindow>
代碼:
void MainWindow::on_action_New_triggered()
{
QTextEdit*edit=newQTextEdit();//新建一個TextEdit部件
QMdiSubWindow*child=ui->mdiArea->addSubWindow(edit);
child->setWindowTitle("新建文件");
child->show();//非模態,可以創建N個子窗口
}
6. 工具箱的實現。(Dock部件)
這裏調用的是QDockWidget類中的部件。
先在設計模式添加一個子菜單“顯示工具箱”,以及一個Dock部件:Dock Widget.
然後單擊轉到槽創建triggered()的槽函數。
輸入代碼:
//顯示工具箱
voidMainWindow::on_action_show_triggered()
{
ui->dockWidget->show();
}
然後就可以在關閉掉工具箱的時候,按下該菜單就可以重新顯示Dock。
7. 添加狀態欄。
直接使用QStatusBar類提供的函數來顯示狀態信息。默認有三類狀態欄:臨時信息(顯示一般信息)、正常信息(顯示頁數和行號)和永久信息(顯示版本號或者日期)。
以上創建主窗口就到此爲止。