whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews
 misc ¦  tutorials ¦  Add&Win Game

Tips (1541)

Database (90)
Files (137)
Forms (107)
Graphic (114)
IDE (21)
Indy (5)
Internet / LAN (130)
IntraWeb (0)
Math (76)
Misc (126)
Multimedia (45)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (266)
VCL (242)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

31 Visitors Online


 
...disable the Context Menu in a TWebbrowser?
Autor: Thomas Stutz
[ Print tip ]  

Tip Rating (19):  
     


var
  
HookID: THandle;

function MouseProc(nCode: Integer; wParam, lParam: Longint): Longint; stdcall;
var
  
szClassName: array[0..255] of Char;
const
  
ie_name = 'Internet Explorer_Server';
begin
  case 
nCode < 0 of
    
True:
      Result := CallNextHookEx(HookID, nCode, wParam, lParam)
      else
        case 
wParam of
          
WM_RBUTTONDOWN,
          WM_RBUTTONUP:
            begin
              
GetClassName(PMOUSEHOOKSTRUCT(lParam)^.HWND, szClassName, SizeOf(szClassName));
              if lstrcmp(@szClassName[0], @ie_name[1]) = 0 then
                
Result := HC_SKIP
              else
                
Result := CallNextHookEx(HookID, nCode, wParam, lParam);
            end
            else
              
Result := CallNextHookEx(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;

procedure TForm1.Button1Click(Sender: TObject);
begin
  
Webbrowser1.Navigate('http://www.google.com');
end;


 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners