QT的對話方塊

2021-09-30 05:55:02 字數 2409 閱讀 2468

qt的對話方塊類qdialog實現了對話方塊的基礎,它從qwidget繼承,可以提供乙個返回值。

建立乙個對話方塊的步驟如下:

建立乙個從qdialog繼承的類。

新增對話方塊中的部件,如按鈕等等

建立各種需要的訊息和槽。

view source

print?

01classfinddialog :publicqdialog//從qdialog繼承乙個新的對話方塊類

02

這樣乙個對話方塊子類就建立好了,那麼該實現了。

首先是在建構函式中建立對話方塊中的部件並設定,並且設計好部件在窗體中的布局。

view source

print?

01finddialog::finddialog(qwidget *parent)

02

接著實現對話方塊中所用到的槽

view source

print?

01voidfinddialog::findclicked()

02

12else

13

16}

17//設定根據lineedit內容設定findbutton是否

18voidfinddialog::enablefindbutton(constqstring &text)

19

view source

print?

1

view source

print?

1好了真個對話方塊類就實現好了,呼叫來看看~

view source

print?

01

02#include

03

04intmain(intargc,char*ar**)

05

執行如圖:

建立對話方塊的大致步驟就如上面的了。當然也可以通過qt designer進行視覺化的設計對話方塊後給程式呼叫。

關於lineedit:

lineedit的輸入可以通過檢驗器件來控制輸入。如:qintvalidator,qdoublevalidator,qregexpvalidator。

示例:view source

print?

1qregexp regexp("[a-za-z][1-9][0-9]");

2lineedit->setvalidator(newqregexpvalidator(regexp,this));

這裡限定lineedit輸入的第乙個字元必須是字母,第二個字元必須是1-9的數字,然後可乙個輸入0至2個0到9的數字。

感覺這裡正則真的很方便哦。以前寫**的時候控制edit資料總會寫一堆**,而qt這裡2距**搞定。。。。

Qt 對話方塊

1.qt 中使用qdialog 類實現對話方塊。就像主視窗一樣,我們通常會設計乙個類繼承 qdialog qdialog 及其子類,以及所有 qt dialog 型別的類 的對於其 parent 指標都有額外的解釋 如果 parent 為null 則該對話方塊會作為乙個頂層視窗,否則則作為其父元件的...

Qt 對話方塊

1.qdialog 類是對話方塊視窗的基類。對話方塊視窗是乙個頂級視窗,通常用作短期任務,或 者是與使用者的簡短會話等場合。2.對話方塊可以分為模態對話方塊和非模態對話方塊。所謂模態對話方塊就是在其沒有被關閉之前,使用者不能與同乙個應用程式的其他視窗進行互動,直到該對話方塊關閉。奪取焦點 對於非模態...

qt 對話方塊

對話方塊分為模態和非模態 1 模態對話方塊就是在其沒有被關閉之前,使用者不能與同乙個應用程式的其他視窗進行互動,直到該對話方塊關閉。this setmodal true 2 非模態對話方塊,當被開啟時,使用者既可選擇和該對話方塊進行互動,也可以選擇同應用程式的其他窗 互。this setmodal ...