Thema: Delphi Maus deaktivieren...

Einzelnen Beitrag anzeigen

Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
  Alt 27. Jun 2003, 18:19
Hallo,
ich hatte vor kurzem das Problem, eine Fremdapplikation zu steuern, wo
manche Komponenten keine waren, sondern nur grafische Elemente.

Daher bestimmte ich die relative Position dieser Elemente, und schob
danach die Maus dorthin und simulierte einen Mausklick.

Damit inzwischen der User nicht den Mauscurser in eine andere Richtung
verschob, versteckte/schaltete ich die Maus aus !

Delphi-Quellcode:
ShowCursor(FALSE); // Cursor aus/ein
ShowCursor(TRUE);
Damit schaltete ich die Maus aus (WinXP)
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

   function FuncAvail(_dllname, _funcname: string; var _p: pointer): boolean;
   { Devuelve true si la funcion _funcname esta disponible en la DLL _dllname.
    Si es asi, almacena en _p la direccion de la función.}


   var _lib: tHandle;

   begin
     Result := false;
     _p := NIL;
     if LoadLibrary(PChar(_dllname)) = 0 then exit;
     _lib := GetModuleHandle(PChar(_dllname));
     if _lib <> 0 then
       begin
         _p := GetProcAddress(_lib, PChar(_funcname));
         if _p <> NIL then Result := true;
       end;
   end;


 var
   xBlockInput : function(Block: BOOL): BOOL; stdcall;

 begin
   if FuncAvail('USER32.DLL', 'BlockInput', @xBlockInput) = true then
     begin
       {Bloquear entradas/Disable input}
       xBlockInput(true);
       sleep(4000);
       {Desbloquear/Enable}
       xBlockInput(false);
     end;
 end;
Quelle:Disable mouse an keyboard in whole Windows
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat