第一步,先把window封裝起來,我新建一個MainWidget類,繼承自QWidget類,類的頭文件如下:
cpp文件如下:
main.cpp文件如下:
編譯運行,結果和上次一樣。
接下來申請一個自定義Slot,首先在頭文件public:前加入宏
Q_OBJECT;
只有加入了Q_OBJECT,你才能使用QT中的signal和slot機制。這點很重要,不然你編譯的時候會報“找不到slot”的錯誤。
然後在protected: 前加入:
slot同樣也分private、public、protected,意義和c++一樣。
CPP中加入相應執行:
把connect改成:
編譯運行,這時點擊按鈕就會改變文字了。就這麼簡單。
信號也可以自定義,不過信號自定義相對來說用武之地稍微小一點,定義的方式和slot定義差不多,都得在頭文件中定義,
舉個例子:點擊按鈕後文本改變,觸發一個新信號,這個信號會把文字又變回來。
在頭文件中加入:
再增加一個Slot用來對這個信號進行反饋。在private slots:後加入
CPP中加入執行:
注意信號是不需要加執行代碼。
然後修改SetText()函數加入觸發新信號的代碼:
最後加入新的connect:
編譯運行,結果和我們想要的一樣。
注:信號和槽都是可以有參數的。
有關QT的基礎知識就介紹到這裏,具體控件的使用方法,請自行參考助手。
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/vickylh/archive/2010/05/18/5604812.aspx