2014-09-25 39 views
-1

編輯按鈕連接:我不想調用對象的析構在this thread建議。如何編輯在Qt的

我已經連接一個按鈕的槽。此插槽啓動一個進程。該過程完成

ui->btnActivate->setText("Start"); 
connect(ui->btnActivate, SIGNAL(clicked()),this, SLOT(startProcess())); 

後,我做

ui->btnActivate->setText("Close"); 
connect(ui->btnActivate, SIGNAL(clicked()),this, SLOT(close())); 

但現在的按鈕即可啓動程序,然後運行密切。如何在改變按鈕行爲之前斷開第一個連接?我想避免調用析構函數

+0

[Qt Signals and Slots object disconnect?]可能重複?(http://stackoverflow.com/questions/9264750/qt-signals-and-slots-object-disconnect) – 2014-09-25 08:02:59

+2

使用'disconnect()' – 2014-09-25 08:04:32

+3

你可以從插槽中斷開信號:'disconnect(ui-> btnActivate,SIGNAL(clicked()),this,SLOT(startProcess()));' – Nejat 2014-09-25 08:05:05

回答

1

只需使用的QObject::disconnect 5個簽名1簡單地刪除兩個對象之間的連接,而不破壞其中任何一個。