少し調べてみると、人々は同様の問題を抱えているようですが、異なるソースからの複数の信号などがあります。私の状況は、成功、失敗、またはキャンセルされた場合に信号を送るオブジェクトがあるということです。これらのシグナルは別のクラスに渡され、スロットには接続されず、単なるシグナルです。ここで、オブジェクトが送信する信号 (失敗、成功、キャンセル) に関係なく、オブジェクトを削除するスロットが呼び出されるように修正したいと思います。要するに、オブジェクトのすべての信号をスロットに接続する方法が必要です。
このようなことをしたい:
connect(myObject, allSignals, this, handleObjectDone());
void handleObjectDone() {
myObject->deleteLater();
}
これを行う方法はありますか?または、何かを行うたびに 2 つのシグナルを渡す必要がemit readyToBeDeleted()
ありemit succeded()
ますか?
ありがとう!