6--QT 創建主窗口MainWindow

一個應用程序主窗口框架一般包含有:

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類提供的函數來顯示狀態信息。默認有三類狀態欄:臨時信息(顯示一般信息)、正常信息(顯示頁數和行號)和永久信息(顯示版本號或者日期)。

 

以上創建主窗口就到此爲止。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章