1

MFC ドキュメント ビュー アプリを作成し、から継承するクラスをいくつか追加しCEditましたCViewCEdit各作業の間にタブを付けたいと思います。私は周りを見回しましたが、ほとんどの解決策にはIsDialogMessage()、メッセージループまたは のいずれかに追加することが含まれPreTranslateMessageます。私はこのようなクラスのPreTranslateMessageメソッドでこれを試しました:CEdit

BOOL WordControl::PreTranslateMessage(MSG* pMsg)
{
    if(IsDialogMessage(pMsg))
        return TRUE;
    else
        return __super::PreTranslateMessage(pMsg);
}

ただし、現在、CEdit はキーボード メッセージを受信せず、タブも実行しません。私はこのようなものを作成しましたCEdit:

Create(WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER | ES_CENTER , Rect, Parent, Index);

私は何を間違っていますか?

編集:

アプリは、基本的な MFC 単一ドキュメント テンプレートを使用します。CEditから継承するいくつかのオブジェクトとから継承するいくつかのオブジェクトを動的に追加していますCStaticCEditsとをすべて作成できましたが、 からにCStaticsタブで移動できるようにしたいと考えています。CEditCEdit

百聞は一見に如かず。ここにスクリーンショットがあります:

スクリーンショット

CEdit最初に「こんにちは」と入力し、タブを押して、次にCEditフォーカスできるようにしたいと考えています。次に、「world」と入力してタブを押すと、次CEditは「this」などと入力するためのフォーカスが得られます。

編集:

新しい窓:

新しい窓

4

1 に答える 1