1. D6 + Flash MX OCX 本身有去掉菜单的功能2. 程序实现,主要是滤掉右键消息:unit Unit1;interfaceuses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, ShockwaveFlashObjects_TLB, Menus;type
  TForm1 = class(TForm)
    ShockwaveFlash1: TShockwaveFlash;
    procedure FormCreate(Sender: TObject);
  private
    procedure HookRMenuMessage(var AMsg: TMsg; var Handled: Boolean);
  end;var
  Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage := HookRMenuMessage;
end;procedure TForm1.HookRMenuMessage(var AMsg: TMsg; var Handled: Boolean);
begin
  if (AMsg.message = WM_RBUTTONDOWN) and (AMsg.hwnd = ShockwaveFlash1.Handle) then
    Handled := True;
end;end.

解决方案 »

  1.   

    在click中检测是不是右键,是的话可以让它取消就跟按下tab键的时候使他变成回车一样
      

  2.   

    你新建一个工程,  然后在Form上放一个Buttonunit  Unit1;interfaceuses
      
        Windows,  Messages,  SysUtils,  Variants,  Classes,  Graphics,  Controls,  Forms, 
        Dialogs,  StdCtrls,  OleCtrls,  ShockwaveFlashObjects_TLB;  
    type
     
        TMyFlash  =  class(TShockwaveFlash)
      
        public
      
            procedure  TWMRBUTTONDOWN(var  msg:TMsg);  message  WM_RBUTTONDOWN;  
        end;
      
        TForm1  =  class(TForm)  
            f1:  TShockwaveFlash;
      
            Button1:  TButton;
      
            procedure  Button1Click(Sender:  TObject);  
        private  
            {  Private  declarations  }
      
        public  
            f2  :  TMyFlash;  
            {  Public  declarations  }
        end;
    var    Form1:  TForm1;implementation{$R  *.dfm}procedure    TMyFlash.TWMRBUTTONDOWN(var  msg:TMsg);  
    begin
      
            //加入自己的事件处理end; procedure  TForm1.Button1Click(Sender:  TObject);
    begin  
            f2  :=  TMyFlash.Create(nil);  
            f2.Parent  :=  Form1;
    end;
    end.
      

  3.   

    Removing the popup menu in Macromedia Flash .OCXIn Delphi 5, place an "Application Events" component onto the form.On the "OnMessage" Event place the following code:procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
     var Handled: Boolean);
    begin
     if Msg.message = WM_RBUTTONDOWN then Handled := True;
    end;If by chance you wanted to place your own popupmenu, then do the following:procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
     var Handled: Boolean);
    begin
     if Msg.message = WM_RBUTTONDOWN then
     begin
       popupmenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
       Handled := True;
     end;
    end;
      

  4.   

    把FLASH控件的Enabled属性改成False就可以了!这是最简单的办法也是最有效的办法
      

  5.   

    把FLASH控件的Enabled属性改成False就可以了!这是最简单的办法也是最有效的办法