Delphi TWebBrowser 屏蔽右键菜单


本文整理自网络,侵删。

 
TWebBrowser 屏蔽右键菜单

//Here's the code to disable the context menu (the one a user gets when it right-clicks inside a TWebBrowser) for TWebBrowser in a Delphi application:


function MouseProc(nCode: Integer; wParam, lParam: Longint): LongInt; stdcall;
var
   classbuf: array[0..255] of Char;
const
   ie = 'Internet Explorer_Server';
begin
   case nCode < 0 of
     True:
       Result := CallNextHookEx(MouseHook, nCode, wParam, lParam) ;
     False:
       case wParam of
       WM_RBUTTONDOWN, WM_RBUTTONUP:
       begin
         GetClassName(PMOUSEHOOKSTRUCT(lParam)^.HWND, classbuf, SizeOf(classbuf)) ;
         if lstrcmp(@classbuf[0], @ie[1]) = 0 then
           Result := HC_SKIP
         else
           Result := CallNextHookEx(MouseHook, nCode, wParam, lParam) ;
       end
       else
       begin
         Result := CallNextHookEx(MouseHook, nCode, wParam, lParam) ;
       end;
     end; //case wParam
   end; //case nCode
end; (*MouseProc*)


//Form OnCreate
procedure TWebBrowserForm.FormCreate(Sender: TObject) ;
begin
   MouseHook := SetWindowsHookEx(WH_MOUSE, MouseProc, 0, GetCurrentThreadId()) ;
end;

//Form OnDestroy
procedure TWebBrowserForm.FormDestroy(Sender: TObject) ;
begin
   if MouseHook <> 0 then UnHookWindowsHookEx(MouseHook) ;
end;


If you want to find more about Windows hooks, read the :An introduction to hook procedures

相关阅读 >>

如何访问局域网的access数据库

Delphi 用浏览器来显示带图片的邮件内容,图片无需保存为本地文件

indy tidtcpclient 的一个用法上要留意的问题,以及 http

Delphi changefileext 更改文件的后缀扩展名

Delphi获得某个磁盘或是文件夹的所有子目录

Delphi开发的服务中调用指定应用程序

Delphi最简单的多线程网页采集

Delphi中调用必应搜索(bing)的api函数

Delphi richedit memo1支持中文搜索、向上查找、区分大小写

Delphi 网卡mac地址随机生成函数

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...