如何将Windows消息发送到不是MainForm的应用程序中的表单?使用下面的代码给我一个访问冲突。

procedure TMainForm.SendMessageToAnotherForm;
begin
  SendMessage(MyForm.Handle,WM_MY_MESSAGE,0,0);
end;


MyForm已经创建,并且是最顶部的窗口。

编辑:我也尝试过PostMessage,但我收到相同的访问冲突,并且我肯定WM_MY_MESSAGE是有效的,因为我使用它与其他地方的MainForm进行通信。

最佳答案

使用以上代码获得访问冲突的最可能原因是MyForm = nil或通配指针。使用SendMessage调用在代码行上设置一个断点并进行检查。如果MyForm是有效的引用,则访问冲突是由MyForm中的消息处理引起的。

关于delphi - 如何将Windows消息发送到非主要形式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2865770/

10-15 05:20