显示出网页后,点右键出现IE的右键菜单,怎么屏蔽它?谢谢!

解决方案 »

  1.   

    procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
      var Handled: Boolean);
    begin
      with Msg do
      begin
        if not IsChild(WebBrowser1.Handle, hWnd) then Exit;
        Handled := (message = WM_RBUTTONDOWN) or (message = WM_RBUTTONUP);
      end;
    end;
      

  2.   

    procedure Tcalendar_Frm.ApplicationEvents1Message(var Msg: tagMSG;
      var Handled: Boolean);
    begin
    if IsChild(WebBrowser1.Handle, Msg.Hwnd) and
    ((Msg.Message = WM_RBUTTONDOWN) or (Msg.Message = WM_RBUTTONUP)) then
    begin
    Handled := True;
    end;
    end;
      

  3.   

    放一个ApplicationEvents,在OnMessage中.........  
    procedure  TForm1.ApplicationEvents1Message(var  Msg:  tagMSG;  
       var  Handled:  Boolean);  
    var  
       mPoint  :  TPoint;  
    begin  
       if  IsChild(WebBrowser1.Handle,  Msg.Hwnd)  and  
             ((Msg.Message  =  WM_RBUTTONDOWN)  or  (Msg.Message  =  WM_RBUTTONUP))  then  
       begin  
           GetCursorPos(mPoint);  
           PopupMenu1.Popup(mPoint.X,  mPoint.Y);  
           Handled:=True;  
       end;  
    end;
      

  4.   

    见http://community.csdn.net/Expert/topic/3652/3652855.xml?temp=.2665216
      

  5.   

    我在包含webbrowser的窗体上放置一个ApplicationEvents1控件,在它的onmessage事件中写进如上代码,创建窗体时提示异常 "invalid property value",是不是,光处理了右键消息,其他消息没处理啊?还有窗体关闭时,IsChild(WebBrowser1.Handle, Msg.Hwnd)这句也会出异常
    我的窗体不是程序的主窗体,点击按钮时生成一个包含webbrowser的模式窗体,显示网页。
      

  6.   

    搞定了,我把包含webbrowser的窗体放在另外一个窗体的scrollbox中了,
    把ApplicationEvents1控件放在 有scrollbox的窗体中,就 ok了。
    另外在最后用否加上这么一句:
    DefWindowProc(Handle,msg.message,Msg.WParam,Msg.LParam);
    ?
    谢谢各位大虾!