QT向介面中巢狀新的介面

2021-09-27 12:51:07 字數 1450 閱讀 2798

簡單說下 想要實現的內容

我們有乙個主視窗mainwindow,需要向其中放入新的介面,你可以自己定義裡面內容。

大致的效果圖如下

實現起來就是利用qt的layout布局 使用水平布局qhboxlayout或qvboxlayout

第一步,先進入ui編輯介面,加入乙個水平或者垂直的布局(根據自己選則,我用水平)充滿整個mainwindow

注意右邊我更改了 qhboxlayout的名稱 為phboxlayout

然後執行一遍 ;(注意需要執行一遍 要不然類找不到phboxlayout 這個布局)

接著定義乙個方法(向mainwindow增加視窗的方法) (mainwindow.cpp)

1

void mainwindow::putwidget(qwidget*widget)

2

新建乙個class檔案 定義為mywidget名稱 inherent qobject和qwidget

在類名mywidget後面增加 :public qwidget

在mywidget中增加該視窗的背景色 區分其他區域

1

mywidget::mywidget()

2

在main函式中新增(main.cpp)

mywidget *widget=new

mywidget();

w.putwidget(widget);

編譯執行一下

得到如下結果

後面的工作比較重複 就是慢慢增加左右布局,再將布局新增控制項 

注意兩點:

新建乙個layout布局時需要指定父類在括號中 leftwidget為需要定義布局的控制項

1 qvboxlayout *phvboxlayout=new qvboxlayout(leftwidget);
定義這個控制項時,需要定義指標形式

mywidget檔案的**為

最後**如下 就幾kb

更改qt中介面繼承的類

一 有時候,我們需要更改qt介面中的類的繼承,更改如圖所示的類 比如我們想將原先的 qmainwindow更改為qwidget,直接在介面更改是不好改的,那更改的方式如以下幾步 1 找到你的 檔案,找到如圖所示 你可以選擇用notepad 來進行開啟,開啟之後,會進入以下的介面 將裡面的 qmain...

利用Qt實現簡單的介面

ui 開啟ui檔案,我們就可以再裡面畫我們的控制項,畫好之後,qt會同步幫我們生成乙個叫ui的的類,我們可以通過這個類來引用我們繪製的控制項。我們也可以在ui檔案的設計界面對乙個按鈕或者其他的控制項新增槽 qt中的驅動機制就是基於訊號和槽的繫結 具體步驟就是,選中乙個控制項 右鍵 轉到槽,然後就可以...

Qt 的介面開發筆記

現在的工作是介面應用程式開發,以前使用c程式設計,現在需要qt 下用到c 做嵌入式介面開發,邊做專案邊總結。在總結的同時,新增例子程式,可以更好的理解理論知識。一般找到的教程是直接操作,沒有定義自己的類,在專案比較小,功能比較單一的情況下可以使用,但是不如依據個人需求重新定義類更方便快捷,qt 工程...