各位大家好,小弟刚刚研究DELPHI,对其编程并不十分熟悉,利用ShockwaveFlash控件加载SWF文件,然后播放,但在播放过程中如果鼠标对其单击或双击,影片会自己移动,请问是什么原因造成的,望不吝赐教部分代码:Form1.ShockwaveFlash3.Show;
            Form1.ShockwaveFlash3.BackgroundColor:=clblack;
            Form1.ShockwaveFlash3.AlignMode:=5;
            Form1.ShockwaveFlash3.Left := 320;
            Form1.ShockwaveFlash3.Top :=  350;
            Form1.ShockwaveFlash3.Height :=  250;
            Form1.ShockwaveFlash3.Width := 250;            Form1.ShockwaveFlash3.Movie := 'C:\temp\花.swf';
            Form1.ShockwaveFlash3.WMode := 'Transparent';
            Form1.ShockwaveFlash3.Play;

解决方案 »

  1.   

    控件支持移动拖放,你看看控件的属性列表是否有控制,比如enable := false;
    另外,在单击或者双击事件里加入一些控制。
      

  2.   

    你不是自己指定了位置么? 肯定会移动啊。 如果想出线在设计时的位置 注释掉以下红色部分  
    Form1.ShockwaveFlash3.BackgroundColor:=clblack;
      Form1.ShockwaveFlash3.AlignMode:=5;
      Form1.ShockwaveFlash3.Left := 320;
      Form1.ShockwaveFlash3.Top := 350;

      Form1.ShockwaveFlash3.Height := 250;
      Form1.ShockwaveFlash3.Width := 250;  Form1.ShockwaveFlash3.Movie := 'C:\temp\花.swf';
      Form1.ShockwaveFlash3.WMode := 'Transparent';
      Form1.ShockwaveFlash3.Play;
      

  3.   

    楼上的,他是说 影片会移动;估计是 控件的大小 小于 影片的大小;
    ---===---
    flash右键不是有个"放大"吗?估计是这个原因;
      

  4.   

    把位置代碼去掉1:Align   :=   alClient     2:在   FormResize   事件中: 
            Begin 
                SHOCKWAEFLASH.SetFocus; 
                Button1.SetFocus;//其他任何可以被SetFocus的控件 
            End 
          如果还不行,写成(顺序换一下) 
          Begin 
                Button1.SetFocus;//其他任何可以被SetFocus的控件 
                SHOCKWAEFLASH.SetFocus; 
            End 
      

  5.   

    ShockwaveFlash控件并不是最好的控件,你看我一个透明播放的作品:http://www.mwymwy.com/playswf.exe
      

  6.   

    转帖请保留本文地址『命令与征服中文网』ZH.818-818.com没有合在一起的,你可以先安装冲击波0.95,然后安装冲击波(Shock Wave)0.951升级补丁,最后再安装冲击波汉化补丁(繁体版或者简体版)转帖请注明文章地址Transshipment:please label POST URL『命令与征服中文网』『中华战网』ZH.818-818.com文章地址所属版块绝命时刻MOD下载