Edit control doesn't generate WM_COMMAND messa

2019-09-01 02:01发布

问题:

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.