我这里有一个情况,我不知道出了什么问题。我有一个父母和 2 个 sunclassed 孩子。两者都是编辑类型。现在我正在使用第一个控件(第一个子控件)从用户那里获取输入,一切正常,然后我通过自定义消息向父级发送消息,然后我想将消息转发到第二个控件,但当我采用
SendMessage();
什么都没发生……
我的自定义消息是这样定义的:
#define WM_USERMESSAGE 0x0401
我的另一个问题是如何发送字符串?因为当我通过 lParam 将消息发送给父亲时,它说它的值为 72,但我没有看到对我发送的文本的任何引用。
这些是代码段:孩子 1 收到输入后向父亲发送消息:
case WM_KEYUP:
{
switch (wParam) {
case VK_RETURN:
{
length = GetWindowTextLength(hwnd);
GetWindowText(hwnd, buf,length);
SetWindowText(hwnd,NULL);
tempa = SendMessage(GetParent(hwnd), WM_USERMESSAGE,sizeof(buf),*buf);
return 0;
}
}
return 0;
}
父亲收到消息并尝试转发:
case WM_USERMESSAGE:
{
int tempb = SendMessage(nhwnd, WM_USERMESSAGE, wParam, (LPARAM)"Hi");
}
2 号孩子正在收听消息:
case WM_USERMESSAGE:
{
SetWindowText(window, "hi");//(TCHAR*)lParam);
return 0;
}
(现在如您所见,我使用静态字符串来检查函数是否有效,但我想更改它们以便从消息中接收信息)提前感谢您的帮助!