這回我來體驗QT裡一個最重要的機制 [Signal] [Slot]
同樣的我們在eclipse 裡產生第二個專案[ SecondQT]
我們快速的透過QT Designer 拉了二個元件到面上板上
1.Spin Box
2.Horizontal Slider
並把面板做了大小的調整

在下方若沒出現 Qt C++ Signal Slot Editor的話,請在menu的 [Windows] => [Show View] => [Other] 將這個項目打開

接著在 QT C++ Signal Slot Editor 右方的 +號增二個項目

接著我們點選所增加的項目依下列步驟設定








設完後應該會如下圖:

接下我們就來執行看看,請選到C++ Project Explorer
選擇SecondQT專案後,按右鍵 => [Run As] => [Locale C/C++ Application] => 再選所使用的Debuger(我們安裝的MinGW所以是選擇MinGW gdb Debugger)
接著就會看到 QT正在幫我們透過 .ui 檔,產生header file,並且make及執行程式

我們的程式執行了

我們試著拉動Spin Box 的上下鈕 或是 Horizontal Slider的拉桿
即可以看到相互改變對方的值的結果


由這個簡單的例子可以看到 Signal 代表著是發射方
Slot就是接收方
以如上的機制來達到 Event Trigger
還蠻有意思的
沒有留言:
張貼留言