Einzelnen Beitrag anzeigen

Biohazard

Registriert seit: 20. Mär 2003
46 Beiträge
 
#1

Sendmessage und Zwischenablage Problem

  Alt 20. Jun 2003, 09:48
Hallo,
habe da ein kleines Problem. Ich möchte, wenn ich den HotKey drücken den markierten Text aus einer anderen Anwendung an mein Prog übergeben. (Später soll sich das Wort noch selber markieren).
Dabei gehe ich so vor, daß zu diesem Zeitpunkt das Handle ermittelt wird das unter dem Mousecursor ist. Der Rest wird über die Zwischenablage erledigt. Innerhalb meines Programmes funktioniert es aber mit anderen Progs nicht, obwohl ich das Handle der jeweiligen Komponente habe.
Es wird erst gar nichts in die Zwischenablage kopiert. Warum nicht? Kann mir da jemand helfen.

Hier mal der Code zur Hilfe:

Code:
procedure TForm1.WMHotKey(Var Msg: TWMHotkey);
var rPos: TPoint;
  hWnd: THandle;
  a:integer;
  b:string;
begin
  case Msg.IdHotKey of
    ID:
    begin
    GetCursorPos(rPos);
    hWnd := WindowFromPoint(rPos);
    SendMessage(hwnd, WM_COPY, 0, 0);
    edit1.Text:='';
    b:=edit1.text ;
    han:=findwindow(0,'Hossa');
    hwnd2:=findwindowex(han,0,'TEdit',PAnsiChar(b));
    SendMessage(hwnd2, WM_PASTE, 0, 0);
         end;
    ID+1:
         begin
           //.....
         end;
  end;
  inherited;
end;
  Mit Zitat antworten Zitat