Delphi中禁止WebBrowser右键的方法
1 uses MSHtml; 2 3 4 5 //在控件标签additional中找到TApplicationEvents控件,拖到窗体上.在TApplicationEvents的OnMessage事件中加入以下代码: 6 7 //替换右键菜单 8 9 10 11 procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); 12 13 var 14 15 mPoint: TPoint; 16 17 begin 18 19 if IsChild(WebBrowser.Handle, Msg.Hwnd) and 20 21 ((Msg.Message = WM_RBUTTONDOWN) or (Msg.Message = WM_RBUTTONUP)) then 22 23 begin 24 25 GetCursorPos(mPoint); //得到光标位置 26 27 pm5.Popup(mPoint.X, mPoint.Y); //弹出popupmenu1的菜单 28 29 Handled := True; 30 31 end; 32 33 end; 34 35 36 37 或者 38 39 //屏蔽右键菜单 40 41 42 43 procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean); 44 45 begin 46 47 with Msg do 48 49 begin 50 51 if not IsChild(WebBrowser1.Handle, hWnd) Exit; 52 53 Handled := (message = WM_RBUTTONDOWN) or (message = WM_RBUTTONUP) or (message = WM_CONTEXTMENU); 54 55 end; 56 57 end;