问题
I have an edit control. In the parent window I'm listening a WM_COMMAND
message. But my control doesn't send it on change. Moreover, when I'm watching messages with Spy I can see only different keyboard messages on the edit control itself and the only message in the main parent window is WM_CTLCOLOREDIT
.
P.S.: The only interesting thing I'm doing - I'm creating an edit with HWND_MESSAGE
parent and assign a parent later with SetParent();
回答1:
For an edit control, notifications are sent to the original parent of the control. That is, in your case, the message only window.
In a comment to a similar question Raymond Chen says:
Many controls cache the original parent. Not much you can do about it.
You may be best postponing creation of the edit control until you have created its parent.
来源:https://stackoverflow.com/questions/22916895/after-changing-the-parent-of-a-child-window-with-setparent-the-child-window-sti