在程序使用FLASH OCX 时使FLASH透明

jimzj 2002-08-16 04:55:00
在IE中可以用
<PARAM NAME=wmode VALUE=transparent>设置使FLASH成为透明
但在程序中如何设置

用 WMODE = "transparent" 是不行的还有其它的方法吗
...全文
86 点赞 收藏 12
写回复
12 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jimzj 2002-08-20
这个问题还没有解决
还有那一位老兄请教一下
回复
jimzj 2002-08-19
to wangxd(东东)
这个方法我也用过,但本身tcppwebbrowser又是不透明的
最后还是不透明
回复
SessionEnum 2002-08-19
观注。
回复
wangxd 2002-08-19
关注。
不过变通的方法是在tcppwebbrowser中调用flash动画,这样就可以透明了
回复
jimzj 2002-08-19
还有那一位高手能说一下先谢了!
回复
jimzj 2002-08-19
还有那一位高手能说一下先谢了!
回复
jimzj 2002-08-19
我把 SetWindowLong(Handle, GWL_EXSTYLE, Beta | WS_EX_LAYERED );
换中的所有的 Handle换成 ShockwaveFlash1->Handle,
好像没有什么效果
回复
shally5 2002-08-19
没看清!原来是想让ShockwaveFlash1变成透明啊!
没试成功。。。:(
回复
jimzj 2002-08-19
谢谢 shally5(我在一旁静静的看着你) :
你所给的代码是使整个窗口设置成一定的透明,
但是我要使ShockwaveFlash1成为透明可否再赐教先谢谢了
回复
shally5 2002-08-19
如果操作系统是Win2000或WinXP:

void __fastcall TForm1::FormCreate(TObject *Sender)
{
CurrentPath=ExtractFilePath(Application->ExeName); //取当前程序的路径串
CurrentDrive=CurrentPath.SubString(1,3); //取当前程序的盘符
FileName=CurrentPath+"demo.dat";
ShockwaveFlash1->Movie =/*"c:\\real\\demo\\myfile.swf";//*/WideString( FileName);

int Alpha = 50; // how transparent your window should be (0-100%)

LONG Beta = GetWindowLong( Handle , GWL_EXSTYLE );


SetWindowLong(Handle, GWL_EXSTYLE, Beta | WS_EX_LAYERED );

SetLayeredWindowAttributes( Handle, 0, ( 255 * Alpha ) / 100, LWA_ALPHA );



}
回复
jimzj 2002-08-19
没有人回答?
回复
SessionEnum 2002-08-16
观注。
回复
相关推荐
发帖
C++ Builder
创建于2007-08-02

1.3w+

社区成员

C++ Builder相关内容讨论区
申请成为版主
帖子事件
创建了帖子
2002-08-16 04:55
社区公告
暂无公告