Winapi 编辑控件不使用';t生成WM_命令消息

Winapi 编辑控件不使用';t生成WM_命令消息,winapi,controls,editcontrol,Winapi,Controls,Editcontrol,我有一个编辑控件。在父窗口中,我正在收听WM\u命令消息。但我的控件不会在更改后发送它。此外,当我使用Spy查看消息时,我只能在编辑控件本身上看到不同的键盘消息,并且主父窗口中的唯一消息是WM\u CTLCOLOREDIT 注意:我正在做的唯一有趣的事情是,我正在用HWND_消息创建一个编辑,然后用SetParent()指定一个父项对于编辑控件,将通知发送到控件的原始父控件。也就是说,在您的例子中,只有消息窗口 在对雷蒙德·陈的评论中,他说: 许多控件缓存原始父级。你对此无能为力 最好推迟编辑控

我有一个编辑控件。在父窗口中,我正在收听
WM\u命令
消息。但我的控件不会在更改后发送它。此外,当我使用Spy查看消息时,我只能在编辑控件本身上看到不同的键盘消息,并且主父窗口中的唯一消息是
WM\u CTLCOLOREDIT


注意:我正在做的唯一有趣的事情是,我正在用
HWND_消息创建一个编辑,然后用
SetParent()指定一个父项

对于编辑控件,将通知发送到控件的原始父控件。也就是说,在您的例子中,只有消息窗口

在对雷蒙德·陈的评论中,他说:

许多控件缓存原始父级。你对此无能为力


最好推迟编辑控件的创建,直到创建了其父控件

为什么你只在父母面前发短信?你有没有研究过如果不这样做会发生什么。@DavidHeffernan一开始我不知道控件的父控件-它是动态创建的。稍后,我将设置一个父级,甚至在运行时更改父级。与父控件一起创建控件的行为良好,即所有操作都按预期进行。是的,深入挖掘我发现了一个错误。这太奇怪了。谢谢。最奇怪的是,对于大多数控件,它工作正常,但我必须更改代码以保持一致性。我在这里挖出了一个重复的问题,Raymond的评论证实了这一点。