flash播放问题(50分)

  • 主题发起人 主题发起人 happyloner
  • 开始时间 开始时间
H

happyloner

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在正在做一个flash播放器,遇到了几个问题!
1。不能播放*.exe格式的flash文件,而且有的没有声音,但在flash自带的播放
器就有声!
2。我想实现一个功能,即trackbar的拖动控制播放进度,用的是 onchange事件,
同时也用trackbar显示播放进度,timer控件控制,于是产生了互相触发的问题,
即flash播放时,进度条变化,于是触发onchange事件,因而导致了播放不流畅!
请问各位大侠怎么解决 !
 
1:ole处理
2:不会啊,
timer()
progressbar1.position:=trackbar1.position;
//在onchange里先暂停,放开时再播放
 
还有播放的时候一改变控件的大小,表单就花了。(用来改画面的大小时)
该怎样解决?
 
对于第二点,你可以将timer的时间设长一点,在事件中先暂停再播放应该就没有什么问题!
 
1.关于播发*.exe 你可以将*.exe 转化为*.swf
一下是一个例子 :
procedure TForm1.exe2swf(source,desting:string);
var
sourcestream,destingstream:tfilestream;
swffilesize:cardinal;
begin
sourcestream:=tfilestream.Create(source,fmOpenRead or fmShareExclusive);
try
sourcestream.Seek(-2*sizeof(integer),soFromEnd);
sourcestream.ReadBuffer(swffilesize,sizeof(integer));
if swffilesize=$FA123456 then
begin
sourcestream.ReadBuffer(swffilesize,sizeof(integer));
sourcestream.Seek(-swffilesize-2*sizeof(integer),soFromEnd);
destingstream:=tfilestream.Create(desting,fmCreate);
try
destingstream.CopyFrom(sourcestream,swffilesize);
showmessage('Copy Is OK!');
finally
destingstream.Free;
end;
end else
showmessage('Error On Copy');
finally
sourcestream.Free;
end;
end;
2.改变控件的大小,表单就花了
解决:
在改变控件的大小后加上
ShockwaveFlash.SetFocus;
 
晶晶,请问在什么事件里暂停播放!
petterhuang,难道shockwave不支持*。exe格式? 有没有简单的方法?
 
不可能每播放“exe”格式的flash影片都得转换一次吧????
誰能解决啊,判断是否支持播放????
 
呵呵,我觉得最简单的办法就是:
winexec(*.exe)~~

 
gb2312:呵呵,你没看清题目的意思吧.
 
最简单的调用方法,就是对EXE直接调用系统的关联程序。
几乎所有的FLASH工具,都是这么干的。
本身如果想看,必须调用文件流进行合并处理。
 
知道如何禁止播放flash时的声音么?
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1207733
100分等着你
 
coolbaby, 才100分啊。我一直都没有解决的。
 
呵呵,你能解决么
能解决再加100也无妨
 
happyloner, ,是这样的,我做FLASH播放器时,开始也碰到你这样的问
题,就是播放有的文件没有声音,后来我发现其实是导入ShockwaveFlash时。如果你导入
的版本太低,就会出现这个问题。
 
后退
顶部