SDIを使用して多数の動的に作成されたCViewベースのビューをホストする比較的大きなMFCアプリケーションがあります。アプリケーションの基本的な構造は、Outlook(左のツリービュー、右の動的ビュー)にいくらか似ています。MFC SDIマルチビューアプリケーションへの入力フォーカスの管理
私は、アプリでフォーカスを変更するための正しい方法について困惑しています。たとえば、フォーカスがツリービュー(左側のビュー)にある間に「タブ」をクリックし、フォーカスを適切なビューに移動することができます。私はツリーのタブでタブキーをキャプチャし、手動で適切なビューに変更することができますが、私たちは多くの異なるビュータイプ(いくつかのCformViewベース)と多くのスプリッタコントロールを持っています。それを処理する方法。
私はCDialogやCFormViewでフォーカスを設定するのは簡単です(Visual Studioのビルトインタブオーダーマネージャーを使用するだけです)が、複数のビュータイプと分割バーなどをホストするアプリケーションははるかに複雑です。たとえば、フォーカスが現在フォームビューにある場合、フォームビュータブの最後にタブを置くと、入力フォーカスを別の(動的)ビューに変更する必要があることをどのように検出できますか?
乾杯とありがとうございます。
ダレン。