消息关闭
    暂无新消息!
delphi如何通过sendMessage将Form2中的onMouseMove传递到Form1的Caption

6个回答

︿ 1
线程之间传递可以考虑使用
procedure SendString(strMSG: string;hTargetWin:HWND);
var
  Data: tagCOPYDATASTRUCT;
  pBuf: PChar;
begin
  GetMem(pBuf, Length(strMSG) + 1);
  try
    ZeroMemory(pBuf, Length(strMSG) + 1);
    StrPCopy(pBuf, strMSG);
    Data.cbData:= Length(strMSG)*2+2;
    Data.dwData:= Length(strMSG)*2+2;
    GetMem(Data.lpData,Data.dwData);
    Data.lpData:= pBuf;
    sendMessage(hTargetWin, WM_COPYDATA, 0, Integer(@Data));
  finally
    FreeMem(pBuf);
  end;
end;

发送
 procedure TFrmMain.WM_CopyData(var MSG: TMessage);
var
  Data: ^tagCOPYDATASTRUCT;
  strMSG: string;
  n, j: Integer;
  group: Tlistgroup;
  listitem: Tlistitem;
begin
  Data := Pointer(Msg.lParam);
  strMSG := StrPas(PChar(Data.lpData));
end;

接收

大概是这个意思 我直接截取的部分程序,用于把一个字符串从一个线程到另外一个线程,仅供参考
︿ 0
就是创建了一个application,然后里面有Form1和Form2两个窗体,如何通过sendmessage方法将Form2中的值传递到Form1中,初学不太会用。