Announcement

Collapse
No announcement yet.

TWebbrowser-Popupmenu unterdrücken?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • TWebbrowser-Popupmenu unterdrücken?

    Hallo miteinander,

    gibt es eine Möglichkeit das IE-Popupmenu das beim Click mit der rechten Maustaste auf einer TWebbrowser-Komponente erscheint zu unterdrücken?<br>
    ich möchte nämlich 1. Downloads verhindern und 2. mein eigenes Popupmenu anzeigen lassen.

    Danke im Voraus <br>Walter

  • #2
    Ich habe das mal so gemacht:
    <PRE>
    ...
    var
    HookID: THandle;
    Function MouseProc(nCode: integer; wParam,lParam: longint): longint; stdcall;

    implementation

    ....

    function MouseProc(nCode: integer; wParam,lParam: longint): longint; stdcall;

    function GetClassNameEnh(Handle: Hwnd): string;
    var
    ClassName: PChar;
    Buffer: integer;
    begin
    Buffer := 40;
    getmem(ClassName, Buffer);
    windows.GetClassName(Handle, ClassName, Buffer);
    Result := ClassName;
    Freemem(ClassName);
    end;

    var
    P: TPoint;
    begin
    if (nCode < 0) then
    Result := CallNextHookEx(HookID, nCode, wParam, lParam)
    else if DisableRButton and ((wParam = WM_RBUTTONDOWN) or (wParam =
    WM_RBUTTONUP)) then
    begin
    GetCursorPos(P);
    if Pos('Internet Explorer_', GetClassNameEnh(WindowFromPoint(P))) <> 0 then
    Result := HC_SKIP
    else
    Result := CallNextHookEx(HookID, nCode, wParam, lParam);
    end
    else
    Result := CallNextHookEx(HookID, nCode, wParam, lParam);
    end;

    </PRE>

    Im Create Ereignis:
    <PRE>
    HookID:= SetWindowsHookEx(WH_MOUSE, MouseProc, 0, GetCurrentThreadId());
    </PRE>

    Im Unload Ereignis:
    <PRE>
    UnHookWindowsHookEx(HookID);
    </PRE&gt

    Comment

    Working...
    X