如何在ShockWaveFlash控件中添加自己的PopupMenu(50分)

  • 主题发起人 主题发起人 Teny
  • 开始时间 开始时间
T

Teny

Unregistered / Unconfirmed
GUEST, unregistred user!
在ShockWaveFlash控件中播放Flash右击鼠标时部是出现MacroMedia Player的PopupMenu,
请问如何将此PopupMenu屏蔽,并添加自己的PopupMenu
 
怎么没人理呢?
 
难道嫌分不多?
 
试了一下,没结果...不好意思
我这样试的
menu=false
popupmenu=popupmenu1
 
你得从ShockWaveFlash继承一个类下来,然后重载它的WndProc方法,
在里面判断如果是右键消息就屏蔽它,然后弹出你的PopupMenu
 
同意楼上
我原来做过
看能不能找到例子
 
create中:
application.onmessage:=mymessage;
PUBLISH中:
procedure mymessage(var msg:tmsg;var handled:boolean);
实现:
procedure tform1.mymessage(var msg:tmsg;var handled:boolean);
begin
if (msg.message=wm_rbuttondown) and (msg.hwnd=flash.handle) then
begin
handled:=true;
end;
end;
这是让右键失效的程序,改一下,就能满足你的要求
 
to 小小武:
采用您说的方法是可以屏蔽掉Flash本身的PopupMenu,
但与此同时我的PopupMenu怎么也调不出来了,请指点!
 
将mymessage过程改成:
procedure TForm1.mymessage(var msg: tmsg; var handled: boolean);
begin
if (msg.message=wm_rbuttondown) and (msg.hwnd=ShockwaveFlash1.handle) then
begin
popupmenu1.Popup(Mouse.CursorPos.X,Mouse.CursorPos.Y);
handled:=true;
end;
end;

其中popupmenu1就是你自己定义的鼠标右键菜单。
 
Thanks yangmingnian
It's OK!
 

Similar threads

D
回复
0
查看
825
DelphiTeacher的专栏
D
D
回复
0
查看
831
DelphiTeacher的专栏
D
D
回复
0
查看
664
DelphiTeacher的专栏
D
后退
顶部