Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: mausklicks vollkommen ignorieren ??

  Alt 9. Jul 2004, 07:29
ein Lokaler Hook wäre eine Möglichkeit:
Delphi-Quellcode:
  TForm1 = class(TForm)
  public
    HookID: Cardinal;
  [...]

function MouseProc(nCode: Integer; wParam, lParam: Longint): Longint; stdcall;
begin
  case nCode < 0 of
  True:
    Result := CallNextHookEx(Form1.HookID, nCode, wParam, lParam)
  else
    case wParam of
      WM_RBUTTONDOWN,
      WM_LBUTTONDOWN,
      WM_LBUTTONUP,
      WM_RBUTTONUP:
        Result := HC_SKIP;
    else
      Result := CallNextHookEx(Form1.HookID, nCode, wParam, lParam);
    end;
  end;
end;
[...]
procedure TForm1.FormCreate(Sender: TObject);
begin
  HookID := SetWindowsHookEx(WH_MOUSE, MouseProc, 0, GetCurrentThreadId());
end;
[...]
procedure TForm1.FormDestroy(Sender: TObject);
begin
  if HookID <> 0 then
     UnHookWindowsHookEx(HookID);
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat