关于播放器关闭窗口时的问题(30分)

A

asdqwe

Unregistered / Unconfirmed
GUEST, unregistred user!
我的Flash播放器是作为一个窗口存在于一个工程里的,通过主窗口上的按钮来调用Flash播放器的窗口。
但当我关掉Flash播放器窗口后,而此时不关掉主窗口,并再次按下按钮来调用Flash播放器窗口,发现刚才的动画还在接着播放,
并不是随着Flash播放器窗口的关闭而关闭。
我已经在Flash播放器窗口的OnClose事件里加入了ShockwaveFlash1.FreeOnRelease和ShockwaveFlash1.Stop这两句代码,但还是不行。
请问怎样在关闭Flash播放器窗口的同时也关闭正在播放的Flash文件?
 
在OnClose加下面一句:
Action :=caFree;
 
还是不行!
加上这句后,再次按下按钮来调用Flash播放器窗口时,程序出错!
怎么办?
 
没有高手了吗?
 

除主窗体外,去掉工程文件中的其它CreateForm,动态创建窗体。
 
是不是只能这样,没有别的办法了?
 
>>加上这句后,再次按下按钮来调用Flash播放器窗口时,程序出错!
>>怎么办?
=======================================
在调用的时候加上:
if not Assigned(frmPlay) then

frmPlay := TfrmPlay.Create(Application);
frmPlay.Show;//frmPlay为你的播放窗口.
 
to kingdeezj,
我试过了,不行,关闭播放窗口后,然后在打开,只是在刚才播放到的位置暂停了,并没
有把那个文件关闭。
还请各位大虾帮忙啊!!
谢谢了!
 
ShockwaveFlash1.movie = ''
 
TO tomol
不行,加了这句,关闭播放窗口时程序出错!
到底应该怎样做啊
 
sorry,少了个空格
应该为ShockwaveFlash1.movie = ' '
你可以在打开播放窗口时给movie赋值,在关闭时赋上面的值
 
to tomol:
我试了,加上ShockwaveFlash1.movie = ' '这句后,是把那个Flash文件关闭了,但再调出
播放窗口时出现两个问题:
1、ShockwaveFlash控件呈淡蓝色状态,而不是默认的白色。
2、虽然刚才播放的Flash文件关闭了,但这时再按下“播放”按钮时,还是会重新(重头开始)播放刚才
的Flash文件,好像并没有从内存中清除掉。
我在OnClose里加了以下语句,还是不行:
ShockwaveFlash1.FreeOnRelease;
//不知这句是不是从内存里清除?
ShockwaveFlash1.Movie:=' ';
另外播放列表内容也已被清除:
ListBox1.Items.Clear;
请问以上两个问题什么原因?怎样解决呢?谢谢!
 
怎么没人告诉我了?~!!
 
如果你只是想从头播起的话。可以这样。
在你的FLASH窗体onshow时加入shockwaveflash1.Rewind;
在窗体关闭时加入shockwaveflask1.stop;
就可以了吧。
 
不,我并不是想从头开始,是想让刚才播放的flash文件彻底关闭,再次打开此窗口后呈第一次打开时的
默认状态。
我试了,加上ShockwaveFlash1.movie = ' '这句后,是把那个Flash文件关闭了,但再调出
播放窗口时出现两个问题:
1、ShockwaveFlash控件背景呈淡蓝色状态,而不是默认的白色。
2、虽然刚才播放的Flash文件关闭了,但这时再按下“播放”按钮时,还是会重新(重头开始)播放刚才
的Flash文件,好像并没有从内存中清除掉。
目前OnClose里主要有以下两句代码:
ShockwaveFlash1.FreeOnRelease;
//不知这句是不是从内存里清除?
ShockwaveFlash1.Movie:=' ';
这个问题好久了,到底要怎么解决啊?
请高手们不要小气,救人啊!也请各位帮忙UP,菜鸟先谢过了!
 
先ShockwaveFlash1.Stop
如果是动态生成的:
ShockwaveFlash1.Free;
 
你可以在onclose里加上shockwaveflash1.bgcolor:='ffffff';
这样保正可以。
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
621
SUNSTONE的Delphi笔记
S
S
回复
0
查看
702
SUNSTONE的Delphi笔记
S
D
回复
0
查看
787
DelphiTeacher的专栏
D
顶部