02_QT訊號和槽

爱吃冰激凌的黄某某發表於2024-04-13

1.給控制元件改名字

為了分析程式碼方便,我們要給控制元件改名字。要通俗易懂。

2.什麼是訊號和槽

訊號:訊號就是指控制元件發出的特定的訊號。

比如按鈕的訊號:

![img](file:///C:/Users/機械革命/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png)

槽:槽就是槽函式的意思,我們可以把槽函式繫結在某一個控制元件的訊號上。

3.怎麼關聯訊號和槽

自動關聯

手動選擇相應的控制元件,然後右鍵->轉到槽。

第一個部分: 自動關聯會給我們的工程新增以下內容:

![img](file:///C:/Users/機械革命/AppData/Local/Temp/msohtmlclip1/01/clip_image003.jpg)

槽函式只能宣告到private slots或者public  slots 下面。
第二個部分:

手動關聯

手動關聯使用connect這個函式。

connect(ui->logoBt,SIGNAL(clicked()),this,SLOT(logoBt_clicked_slots()));
connect(A,SIGNAL(B),C,SLOT(D)); //當物件A發出B訊號時候,就會觸發物件C的槽函式D

image-20240411235750584

手動關聯不能起自動關聯相同的名字,不然會執行兩次

image-20240411235904651

相關文章