0

私の Win32 CPP プログラムでは、次のようなものを使用してさまざまなテキスト文字列を表示する子ウィンドウを定義しました。

hnd_to_this_ch_window = CreateWindow( 
                        L"EDIT",L"Some initial text", WS_VISIBLE | WS_CHILD | ES_LEFT,  
                        position_of_this_window_X,              
                        position_of_this_window_Y,
                        TEXTOUT_DEFAULT_WIDTH,          
                        TEXTOUT_DEFAULT_HEIGHT, 
                        handle_to_my_parent_window, NULL,                        
                        hinstance_variable_used_by_create_window, 
                        NULL )

私の問題は、マウスでクリックしてそのような子ウィンドウのいずれかでテキストを選択すると (たとえば、どこかにコピーするために)、アプリケーションのフォーカスがこの子ウィンドウに移動するため、以前はすべてのキー操作が処理されていたことです。メイン ウィンドウの CALLBACK (ケース WM_KEYDOWN:) が子ウィンドウに取り込まれ、入力された文字として表示されます。フォーカスを親に戻して (WM_KEYDOWN が) 再び機能するようにするには、どの魔法の関数を呼び出す必要がありますか? メイン ウィンドウのタイトル バーをクリックするだけで正常に戻ることを期待していましたが、うまくいきません (明らかに、私のプログラムには追加のロジックが欠けているためです)。

4

2 に答える 2