Delphi 获取当前鼠标下的控件内容

时间:2021-07-30 17:54:10

Delphi 获取当前鼠标下的控件内容

主要函数:

GetCursorPos;//获取鼠标的位置

WindowFromPoint;//获取制定point下的handle

GetClassName;//获取类的名字

function TForm1.GetEditText: string;
var
  Point: TPoint;
  Name: array[0..255] of Char;
  Buffer: array[0..1023] of Char;
  AHandle: THandle;
begin
  //取得鼠标位置
  GetCursorPos(Point);
  //取得当前窗口句柄
  AHandle := WindowFromPoint(Point);
  GetClassName(AHandle, Name, Length(Name));
  if AHandle = Self.Handle then
    Exit;
  SendMessage(AHandle, WM_GETTEXT, 1023, Integer(@Buffer));
  Caption := StrPas(Name);
  Result := StrPas(Buffer);  
end;

procedure TForm1.tmr1Timer(Sender: TObject);
begin
  mmo1.Lines.Text := GetEditText;
end;

https://blog.csdn.net/lwstar23133/article/details/6773883