加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

转:.Net 中AxShockwaveFlash的解析

发布时间:2020-12-15 07:00:36 所属栏目:百科 来源:网络整理
导读:1.AlignMode?(读写)? 语法:AlignMode?As?Long? 说明:对齐方式(与?SAlign?属性联动)。当控件的?长宽比例与影片不一致且?WMode?不为?ExactFit?时,影片(没有被放大的)在控件中显示的位置可用该属性调整。?该属性值由标志位组成。如图,将该属性值(二
1.AlignMode?(读写)?
语法:AlignMode?As?Long?
说明:对齐方式(与?SAlign?属性联动)。当控件的?长宽比例与影片不一致且?WMode?不为?ExactFit?时,影片(没有被放大的)在控件中显示的位置可用该属性调整。?该属性值由标志位组成。如图,将该属性值(二进制)中相?应的位标记为?1?就设置了相应的对齐方向。?
属性值与相应的对齐方式(后面括号里是二进制数)?
??????????????1:左对齐(0001)??2:右对齐(0010)??4:顶对齐?(0100)??8:底对齐(1000)?
也可以组合各种对齐方式,同时将两个或以上的位标?记为?1?,也就是将这四个基本值组合相加。比如同时左对齐?和顶对齐,属性值则设为?5(0101)。?
例子?:?设置影片为右对齐?:?
movie.AlignMode?=?2?
2.BackgroundColor(读写)?语法:BackgroundColor?As?Long?说明:影片的背景色(与?BGColor?联动)。以(红×?65536?+绿×?256?+蓝)计算颜色值。红绿蓝颜色取?值范围(0-255?)。默认的影片背景色为?-1?。如果影片?设置了底色或有图片当作背景,那么看不出来该属性值的?改变会有什么影响?。?
例子:将影片背景色设为蓝色?:?
movie.BackgroundColor?=?255?
3.Base?(读写)?
语法:Base?As?String?
说明:指定用于解决影片中所有相对路径的声明的基地址。当影片与其需要的其他文件不在同一目录中的时候该?属性特别有用。如不特别指定,Base?的值默认为?".",也就?是当前影片所在的路径。?
例子?:?
movie.Base?=?"Http://www.domain.com/pathname1/?
pathname2"?
4.BGColor?(读写)?
语法:BGColor?As?String?
说明:影片的背景色(与?BackgroundColor?联动)。与?BackgroundColor?不同的是,BGColor?是一个六位的十六进?制数,每两位分别代表红绿蓝颜色值。如:FFEEAA?表示?红色值为?FF、绿色值为?EE?、蓝色值为?AA?。?
例子:将影片背景色设为红色?:?
movie.BGColor?=?"FF0000"?
5.DeviceFont?(读写)?
语法:DeviceFont?As?Boolean?
说明?:?决定是否使用影片内嵌的字体?,?默认值为?False?。将该属性值设为?True?则强制播放器不使用影片中?内嵌的字体而使用本地系统字体。?
例子:movie.DeviceFont?=?True?
6.EmbedMovie?(读写)?
语法:EmbedMovie?As?Boolean?
说明:影片是否被存贮到控件所在的容器中。当你已?载入一个影片后将该属性设为?True?,播放影片时就不必再?去读?SWF?文件了。这使得在?PowerPoint?简报或?VB?程序?里使用?Flash?影片更容易。但将该属性设为?True?后,控?件的?Movie?属性就不再接受新的值了。要想播放另一个影?片(给?Movie?属性赋新值),必须先将?EmbedMovie?属?性设为?False?。?
movie.EmbedMovie?=?True?
7.FrameNum?(读写)?
语法:FrameNum?As?Long?
说明:影片当前帧的编号?(从?0?开始计数?)。设置?该属性值将使影片停在由?FrameNum?指定的帧处。?
例子?:?显示当前帧数?:?
MsgBox?"?当前显示的是第?"?&?movie.FrameNum?&?
"?帧。"?
使影片显示第?10?帧:?Bomovie.FrameNum?=?9?
8.Loop?(读写)?
语法:Loop?As?Boolean?
说明:是否循环播放。设为?True?是循环播放,设为?False?则只播放一次。?
movie.Loop?=?True?
9.Menu?(读写)?
语法:Menu?As?Boolean?
说明:是否显示菜单。设为?True?显示所有菜单,设?为?False?菜单被屏蔽,但仍有一项“About?Macromedia?Flash?Player...”。如果你实在不喜欢这个菜单,应该在程?序中通过拦截鼠标消息的方法来达到目的。与在独立的?F?l?a?s?h?播放器中不同的是?,在控件的右键菜单里点?
“About...”的话,将打开浏览器到?Macromedia?的网站上去?看?About?了。
movie.Menu?=?False?
10.Movie?(读写)?
语法:Movie?As?String?
说明:要播放的影片路径(URL?)。设置该属性为?一个?SWF?文件的?URL?将载入文件并播放它。若影片是在?本地硬盘上,要写成从盘符开始的绝对路径;若影片是在某网站上,也要写全?URL?地址。?
movie.Movie?=?"http://www.domain.com/path1/path2/filename.swf"?或?
movie.Movie?=?"c:temptest.swf"?
11.Playing?(只读)?
语法:Playing?As?Boolean?
说明:当前播放状态。如果影片正在播放,该属性?值为?True?,否则为?False?。?
If?movie.Playing?=?False?Then?MsgBox?"?影片已停止播放!?"?End?If?
12.Quality?(读写)?
语法:Quality?As?Long?
说明:画面质量(与?Quality2?联动)。Quality?可以取:?
0?——相当于?Quality2?取?"Low"?
1?——相当于?Quality2?取?"High"?
2?——相当于?Quality2?取?"AutoLow"?
3?——相当于?Quality2?取?"AutoHigh"?例子?:?
movie.Quality?=?1?
13.Quality2(读写)?
语法:Quality?As?String?
说明:画面质量(与?Quality?联动)。Quality2?可以取:?Low?:偏重于播放速度而不管显示效果,而且不启用消锯齿功能?。?
High?:偏重于画面而不管播放速度,并且总是启用?消锯齿功能。如果影片中不包含动画就平滑处理位图;如?果有动画,那么位图就不被平滑处理。(这里的动画应该?是把一张图片做平移或旋转)?
AutoLow?:先着重于播放速度,但只要有可能就改?善显示效果。一开始播放时先禁用消锯齿功能。如果播放?器检测到处理器能承受得了?,就启用消锯齿功能?。?
AutoHigh:一开始是播放速度和显示效果并重,但?如有必要就牺牲画质确保速度。开始播放时就启用消锯齿?功能。但如果实际的帧速率比设计时指定的速率慢了,就?禁用消锯齿功能来提高播放速度。?
movie.Quality2?=?"High"?
14.ReadyState(只读)?
语法:ReadyState?As?Long?
说明:影片的当前状态。ReadyState?可以取:?
0?——正在载入?
1?——未初始化?
2?——已载入?
3?——正在交互?
4?——完成?例子?:?
If?movie.ReadyState?=?4?Then?
MsgBox?"?影片载入完成!?"?End?If?
15.SAlign?(读写)?
语法:SAlign?As?String?
说明:对齐模式(与?AlignMode?联动)。当?AlignMode?
代表各对齐模式的位被置“1”时,SAlign?值也相应被设为?
“L”(Left)、“T”(Top)、“R”(Right)、“B”(Bottom)各字符的组合(‘L’、‘T’、‘R’、‘B’的先后顺序不变)?
例子:设置影片为左对齐和顶对齐:?
movie.SAlign?=?"LT"?
16.Scale?(读写)?
语法:scale?As?String?
说明:缩放模式(与?ScaleMode?联动)。Scale?可以?取:?
ShowAll?——在控件内显示全部影片区域,保持影片?长宽比例不变,影片的大小决定于控件长或宽中较小的一?边?。?
NoBorder?——在控件内显示部分影片区域,保持影片?长宽比例不变,影片的大小决定于控件长或宽中较大的一?边?。?
ExactFit?——在控件内显示全部影片区域,将影片的长?宽比例强制等于控件的长宽比例。

MsgBox?"?当前的缩放模式是:"?&?movie.Scale?
17.ScaleMode(读写)?
语法:ScaleMode?As?Long?
说明:缩放模式(与?Scale?联动)。ScaleMode?可以取:?
0?——相当于?Scale?取?"ShowAll"?
1?——相当于?Scale?取?"NoBorder"?
2?——相当于?Scale?取?"ExactFit"?
例子:使影片的缩放模式改成“ExactFit?”:?
movie.ScaleMode?=?2?
18.Stacking?(读写)?
语法:Stacking?As?String?
说明:用于?HTML,将?Flash?Player?当成?HTML?中?的一种“行为”使用时,该属性决定?Flash?影片相对于与其?参照的?HTML?内容如何显示。(有关“行为”请参阅样式表?的资料)。Stacking?可以取:?
none?——“行为”不显示。?
replaceall?——“行为”的显示取代全部其他元素的内?容?,?包括背景?。?
content?——“行为”的显示只取代其他元素的内?容。?
background?——“行为”的显示只取代其他元素的背?景?。?
below?——“行为”在所有其他元素内容的下面显?示。?
belowflow?——“行为”以反向?Z?顺序显示在其他元素?的子对象之上?,但在该元素主要内容之上。?
aboveflow?——“行为”以正向?Z?顺序显示在其他元素?的子对象之下?,但在该元素主要内容之上。?
above?——“行为”显示在所有其他元素的内容之上。?
top?——“行为”的显示置于整个页面内容之上。?例子?:?
movie.Stacking?=?"below"?
19.TotalFrames(只读)?
语法:TotalFrames?As?Long?
说明:返回影片中总帧数。该参数要到影片载入完成?才有效(ReadyState=4)。?
MsgBox?"?本影片共有?"?&?movie.TotalFrames?&?"?帧。"?
End?If?
20.WMode?(读写)?
语法:WMode?As?String?
说明:控件的窗口模式。WMode?可以取:?Window?——?WMode?属性的默认值,按?Flash?播放器?
典型的方式工作,即在控件的矩形窗口中播放影片,这样一?般都能提供最快的动画效果。?
Opaque?——使影片不透明。?Transparent?——创建一个透明的影片。如果影片中有?
透明的片段,放到这里时,就可以看到控件下面的背景。但?使用此属性值,动画的播放速度可能会慢一些。
movie.WMode?=?"Transparent"
方法:
1.Back?
语法:Back()?
说明?:?影片后退一帧?,?并且停止播放?。?例子?:?
movie.Back?
2.Forward?
语法:Forward()?
说明?:?影片前进一帧?,?并且停止播放?。?例子?:?
movie.Forward?
3.GotoFrame?
语法:GotoFrame(FrameNum?As?Long)?说明:将影片跳转到由?FrameNum?指定的帧,并且?
停止播放。如果所指定的帧还未载入,播放器前进到最后?的可用帧并停下,在调用过程中会产生无法预料的后果。?最好使用?PercentLoaded?方法来确定是否已载入足够的影片?来执行本方法。参数?FrameNum?是从?0?开始的,这和?Flash?中的?Goto?动作不一样,它是从?1?开始的。?
例子:跳转到影片的第?20?帧:?
movie.GotoFrame?20?
4.LoadMovie?
语法:LoadMovie(layer?As?Long,?url?As?String)?说明:将由?url?指定的影片载入到由?layer?指定的层上。?例子:将?movie.swf?载入至?0?层:?
movie.LoadMovie?0,?"movie.swf"?
5.Pan?
语法:Pan(x?As?Long,?y?As?Long,?mode?As?Long)?说明:将一个放大过的影片平移由?x?和?y?指定的距离。?
x?和?y?均为相对值。即控件相对于影片来说平移的距离(你?可以想象控件是一个窗户,影片是我们从窗户里看到的放?在外面的布景,?我们看到窗户相对于布景平移了一些距离,?那是外面的布景在动,而窗户是不动的)。用?mode?参数?来指定?x?和?y?的值是像素还是窗口的百分比,当?mode=0?时?坐标系以像素为单位;mode=1?时坐标系就以窗口的百分?比来计算。?平移并不能超出影片的边框,也就是说,往?一个方向平移最多到达影片的边缘与控件对齐的程度。?
例子:控件相对于影片向左向上各平移?5?个像素(当?然控件不会动?,是影片向右向下平移了?):?
movie.Pan?5,5,0?
6.Play?
语法:Play()?
说明:?开始播放影片。?例子:?
movie.Play?
7.Rewind?
语法:Rewind()?
说明:?倒带。返回到影片的第一帧?。?例子:?
movie.Rewind?
8.SetVariable?
语法:SetVariable(name?As?String,?value?As?String)?说明:将由?name?指定的?Flash?变量值设为?value。?
例子:movie.SetVariable?"/Form:UserName",?"John?Smith"
9.SetZoomRect?
语法:SetZoomRect(left?As?Long,?top?As?Long,?right?
As?Long,?bottom?As?Long)?
说明:?将影片中指定的矩形区域放大到控件的大小。?left(左)、top(顶)、right(右)、bottom(底)的坐标值是相?对于控件中的影片有效位置计算的。注意哟,这个函数是?从影片的有效区域的左上角开始计算,而不是控件的左上?角?。?
例子:放大影片中从左上角开始的?200?×?200?点的矩?形区域?:?
pointsToTwips?=?20;?
movie.SetZoomRect?0,?0,?200?*?pointsToTwips,?200?
*?pointsToTwips
10.Stop?
语法:Stop()?
说明?:?停止播放影片?。?例子:movie.Stop?
11.StopPlay?
语法:StopPlay()?
说明?:?停止播放影片?。?例子:movie.StopPlay?
12.TCallFrame?
语法:TCallFrame(target?As?String,?FrameNum?
As?Long)?
说明:在由?t?a?r?g?e?t?指定的时间轴中,执行由?FrameNum?指定的帧中的动作。?
例子:要运行主时间轴中第?5?帧的动作:?
movie.TCallFrame?"/",?4?
13.TCallLabel?
语法:TCallLabel(target?As?String,?label?As?String)?说明:在由?target?指定的时间轴中,执行由?label?指?
定的帧中的动作。?例子:要运行主时间轴中名为“HandleScriptNotify”?
的帧中的动作:?
movie.TCallLabel?"/",?"HandleScriptNotify"?
14.TGotoFrame?
语法:TGotoFrame(target?As?String,51); font-size:13px; line-height:24px; font-family:verdana">说明:对于由?t?a?r?g?e?t?指定的时间轴,转到由?FrameNum?指定的帧。?
movie.TGotoFrame?"/MovieClip",?2?
15.TGotoLabel?
语法:?TGotoLabel(target?As?String,?label?As?String)?说明:对于由?target?指定的时间轴,转到由?label?指?
定的帧。?
例子:movie.TGotoLabel?"/MovieClip",?"MyLabel"?
16.TPlay?
语法:TPlay(target?As?String)?说明:播放由?target?指定的时间轴。?例子:movie.TPlay?"/MovieClip"?
17.TSetProperty?
语法:TSetProperty(target?As?String,?property?As?
Long,?value?As?String)?
说明:对于由?target?指定的时间轴,把由?property?指?定的属性设为由?value?指定的值(字符串)。property?是一个?代表相应属性的编号(详情请参阅附表)。?
Dim?nameIndex?As?Long?
nameIndex?=?13?
movie.TSetProperty?"/MovieClip",?nameIndex,?
"NewName"?
18.TSetPropertyNum?
语法:TSetPropertyNum(target?As?String,?property?
说明:对于由?target?指定的时间轴,把由?property?指定的属性设为由?value?指定的值(数字)。property?是?一个代表相应属性的编号?(详情请参阅附表?)。
例子?:
Dim?visibilityIndex?As?Long?visibilityIndex?=?7?
19.TStopPlay?
语法:TStopPlay(target?As?String)?说明:停止播放由?target?指定的时间轴。?例子?:?
movie.TStopPlay?"/MovieClipToStop"?
20.Zoom?
语法:Zoom(factor?As?Long)?说明:以?factor?指定的相对百分比来缩放视图。factor?
可以理解为从控件窗口看到的影片占实际大小的百分比。将?
factor?设为?0,则视图还原成?100%?大小。当前视图已经是?
100%?时不能再将其缩小。?
例子?:?将影片放大两倍?:?movie.Zoom?50?下面的方法都有返回值:?
21.CurrentFrame?
语法:CurrentFrame()?As?Long?说明:?返回影片的当前帧数。影片的第一帧为?0?。?例子?:?
Dim?frameNow?As?Integer?frameNow?=?movie.currentFrame?
22.FlashVersion?
语法:FlashVersion()?As?Long?
说明:返回控件版本号。该值共有三个字节,依次是主?版本号、次版本号、修订版本号。如我用的?Flash?播放器控?件用此方法返回值是?3?2?7?7?2?2?,相当于十六进制的?
&h05002A,相当于?5.00.42。?
例子:下列程序显示你所使用的控件版本号:?
Dim?verNum,?majorNum,?minorNum,?revisionNum?
As?Long?verNum=movie.FlashVersion?majorNum=verNum??65536?
minorNum=(verNum?-?majorNum?*?65536)??256?
revisionNum?=?verNum?Mod?256?
MsgBox?"?你的?Flash?播放器控件的版本号:"?&?
majorNum?&?"."?&?minorNum?&?"."?&?revisionNum?
23.GetVariable?
语法:GetVariable(name?As?String)?As?String?
说明:返回?name?指定的?Flash?变量的值。如果变量?不存在则返回?null。?
Dim?firstName,?radioButtonValue?As?String?firstName?=?movie.GetVariable?"FirstName"?radioButtonValue?=?movie.GetVariable("/Form/?
RadioButton:Value")?
24、IsPlaying?
语法:IsPlaying()?As?Boolean?
说明:如果影片正在播放则返回?true?。?例子?:?
If?movie.IsPlaying?Then?
MsgBox?"?影片正在播放中!?"?End?If?
25.PercentLoaded?
语法:PercentLoaded()?As?Long?
说明:返回目前已经载入的影片的百分比。取值范围?从?0?到?100?。?
Dim?loaded?As?Boolean?
If?movie.PercentLoaded?=?100?Then?loaded?=?true?
26.TCurrentFrame?
语法:TCurrentFrame(target?As?String)?As?Long?说明:返回由?target?指定的时间轴中当前帧的号码。返?回的帧号码是从?0?开始的,也就是说影片的第一帧为?0?,第?
二帧为?1,以此类推。?例子?:?
Dim?currentFrame?As?Long?
currentFrame?=?movie.TCurrentFrame("/MovieClip")?
27.TCurrentLabel?
语法:TCurrentLabel(target?As?String)?As?String?
说明:返回由?target?指定的时间轴中当前帧的标签。?如果没有当前帧的标签,则返回一个空字符串。?
Dim?currentLabel?As?String?
currentLabel?=?movie.TCurrentLabel("/MovieClip")?
28.TGetProperty?
语法:TGetProperty(target?As?String,51); font-size:13px; line-height:24px; font-family:verdana">As?Long)?As?String?
说明:对于由?target?指定的时间轴,返回由?property?指定的属性值(字符串)。其中,property?是一个代表相应?属性的编号(详情请参阅附表)。?
Dim?nameIndex?As?Long?Dim?name?As?String?nameIndex?=?13?
name?=?movie.TGetProperty("/",?nameIndex)?
29.TGetPropertyNum?
语法:TGetPropertyNum(target?As?String,51); font-size:13px; line-height:24px; font-family:verdana">As?Long)?As?Double?
说明:对于由?target?指定的时间轴,返回由?property?指定的属性值(数字)。其中,property?是一个代表相应属?性的编号(详情请参阅附表)。?
Dim?framesLoadedIndex?As?Long?Dim?framesLoaded?As?Double?framesLoadedIndex?=?12?
framesLoaded?=?movie.TGetProperty("/",?framesLoadedIndex)?
附表:获取及设置属性。相应的每个属性的编号都可用?在?TGetProperty、TGetPropertyAsNumber、TSetProperty?或?TSetPropertyNum?中,以指出将要访问的属性。
事件:
1.FSCommand?
语法:FSCommand(command?As?String,?args?As?
String)?
说明:在?Flash?中为影片添加的?FSCommand?动作可?以从影片中传递信息给?Flash?播放器,Flash?播放器或包含?播放器控件的网页或程序播放这个影片时就根据得到的这些?信息执行相应的动作,从而实现影片内部与外部应用的交?互操作。如在?F?l?a?s?h?中给一个按钮图片添加如下的?Act ion:?
on(release)?{?
???fscommand("fullscreen","true");?
}?
当?Flash?播放器播放这个文件时点击按钮,播放器就?会切换到全屏模式。下面是?Flash?自带的播放器能识别的?命令和它们的参数:?
命令?:?quit?
参数?:?无参数?
作用:关闭播放器?命令:fullscreen?参数:true?或?false?
作用:设置为?true?使播放器以全屏模式播放;设置?为?false?使播放器回到一般窗口模式播放。
命令:allowscale?
参数:true?或?false?
作用:设为?false?将使影片不随播放器大小改变而改?变,始终保持原始尺寸,相当于播放器菜单中的?100%?;?设为?true?则恢复影片随播放器大小而改变的尺寸,相当于?播放器菜单中的?Show?All?。
命令:showmenu?
作用:设为?true?显示全部菜单,包括菜单栏和播放?区的右键菜单;设为?false?菜单栏不显示,播放区的右键?菜单中只有一项“About?Macromedia?Flash?Player...”。
命令:?exec?
参数:应用程序的路径及名称?作用:执行一个指定的应用程序。如在?Flash?影片中?
添加动作为?:?
fscommand("exec","regedit");?
则播放器播放影片时执行此动作会打开“注册表编辑?器”程序。注意哟,Flash?自带的播放器接收到这些命?令后会执行相应的动作,但在控件中不会有任何反应,只?能由程序在?FSCommand?事件中分析接收到的?command?和args?并编程做出相应处理。?
2.On Progress?
语法:Event?On Progress(percentDone?As?Long)?说明:发生在?Flash?影片下载时。percentDone?是影?
片已下载的百分比,取值从?0?到?100?。?
例子:在窗体标题栏中显示下载进度:?
Private?Sub?movie_On Progress(ByVal?percentDone?
form1.Caption?=?"?影片已下载:"?&?percentDone?
&?"%"?
End?Sub?
3.On ReadyStateChange?
ReadyStateChange(newState?As?
Long)?
说明:发生在控件的准备状态改变时。下面列出了?
newState?可能的值:?

4?——完成??

例子:影片载入完成后出现提示信息,然后开始播放?影片?:?
If?newState?=?4?Then?
MsgBox?"?影片载入完成!?"?&?vbCrLf?&?"?影片总帧?数:"?&?movie.TotalFrames?
??????movie.Play?
??????????End?If?
??????End?Sub?


防止原文被删,先转保存。

?

原文出处:http://www.cnblogs.com/yuankexiong313/archive/2010/06/04/1751166.html?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读