タイプQUndoStackの属性を持つクラスHistorymanagerがあります。返されるゲッターで undoStack を取得できます
QSharedPointer<QUndoStack>
別のクラス C では、historymanager にアクセスできるようになり、信号 canRedoChanged(bool) をそのクラスのメソッドに接続する必要があります。問題は次のとおりです。接続メソッドに送信者を伝えるにはどうすればよいですか?
私は試した:
connect((historyManager->getQUndoStack().data()),
SIGNAL(canRedoChanged()), this, SLOT(onCanRedoChanged()));
しかし、それはうまくいきません。私も試しました
connect(*(historyManager->getQUndoStack().data()),
SIGNAL(canRedoChanged()), this, SLOT(onCanRedoChanged()));
前に「*」を付けて historyManager->getQUndoStack().data() を逆参照しますが、コンパイル エラーが発生します。
qudostack.h が確実に提供しているにもかかわらず、Qt は信号 canRedoChanged がないことを伝え続けています。connect メソッドでは、最初の引数が
const QObject *sender
ここで何をする必要がありますか?