在我的 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)可以再次工作?我希望我可以单击主窗口的标题栏,这会使它恢复正常,但这不起作用(因为显然我的程序缺少一些额外的逻辑)。