1

Qt ベースのプログラムでは、次のような階層があります。

MyApplication::QMainWindow -> QTabWidget -> ProjectWidget::QWidget

MyApplication には従来のメニューがあり、アクションの 1 つはインポートであり、QTabWidget->currentWidget で定義されているように ProjectWidget->importStuff() を呼び出す必要があります。

私が抱えている問題は、 QTabWidget->currentWidget を使用するときです QWidget 関数のサブセットに制限されており、拡張関数を呼び出すことができません。また、単一の ProjectWidget にのみ影響する SIGNAL/SLOT を設定する方法もわかりません (残りの ProjectWidget をトリガーすることはありません)。

「isCurrent」と呼ばれるすべての ProjectWidgets にプロパティを追加することを考えています。次に、インポートを呼び出すシグナルを設定し、「isCurrent」の状態を確認します。現在のウィジェットの場合、インポート機能が実行されます。しかし、これは複雑に思えます。もっと簡単な方法はありますか?

4

1 に答える 1