Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 找不到声音的类型错误_Flash_Actionscript 3_Flash Cs3 - Fatal编程技术网

Flash 找不到声音的类型错误

Flash 找不到声音的类型错误,flash,actionscript-3,flash-cs3,Flash,Actionscript 3,Flash Cs3,我是ActionScript的新手。我想动态添加声音到我的flv。我有这个密码。我很肯定它是有效的,因为我在教科书里找到了它 package{ import flash.display.Sprite; import flash.media.Sound; import flash.net.URLRequest; public class soundLoader extends Sprite{ private var sound:Sound; public function

我是ActionScript的新手。我想动态添加声音到我的flv。我有这个密码。我很肯定它是有效的,因为我在教科书里找到了它

package{
 import flash.display.Sprite;
 import flash.media.Sound;
 import flash.net.URLRequest;
 
 public class soundLoader extends Sprite{
  private var sound:Sound;
  
  public function soundLoader(){
   sound = new Sound(new URLRequest("sound.mp3"));
   addChild(sound);
  }

 }
 
}
当我尝试运行代码时,我收到了这些错误消息

1046:找不到类型或类型不是编译时常量:Sound

1180:调用可能未定义的方法声音


我哪里做错了?请,请帮帮我。

此代码有一些地方出错。 首先,按照惯例,AS3中的类名以大写字母开头,因此您应该重命名类SoundLoader而不是SoundLoader。 其次,AS3中的声音对象不是显示对象,因此无法将其添加到精灵的显示列表中。因此,对addChild sound的调用是错误的,并将导致编译错误

然而,这并不能解决你的问题。您是使用Flash还是Flex编写此代码?

这是我的Flash文件:
我是用Flash CS4写的,所以我不知道你是否可以用CS3打开它。希望有帮助,因为我不知道你为什么会犯这样的错误。试着在swf设置中检查你的类路径和类似的东西。

这很奇怪-如果你注释掉所有使用声音的行(包括导入),会发生什么情况-基本上,你能导入其他类,如Sprite等吗?你好,多明尼克,谢谢你指出我的错误。我使用的是AdobeFlashCS3。所以我猜是闪光。很抱歉,我仍然很困惑Flash和Flex。我使用Flash CS4编译了您的代码,它可以正常工作。尝试导入flash.media。*但我不确定这会有什么不同。。。我没有CS3,所以只能在CS4I中测试。我尝试导入flash.media.*,但它仍然给我相同的错误:谢谢,但还是不行。我已经在“首选项”下的ActionScript 3.0设置中检查了类路径。它有“$AppConfig/ActionScript 3.0/Classes”。我需要为此添加其他类路径吗?在CS4中,它是“$AppConfig/ActionScript 3.0/libs”,可能是相同的。您应该尝试使用您创建的SoundLoader类制作一个非常小的Flash文件,就像我在发送给您的.rar中所做的那样,只是为了测试您是否遇到相同的错误。也许是命名冲突。您是否创建了一个名为Sound.as的类?如果你有,那可能就是问题所在。如果不是的话,我不知道问题是什么。事实上,这是一个非常小的项目,就像你说的。我只有var s:SoundLoader=新的SoundLoader;在我的Flash文档和SoundLoader.as中的SoundLoader类中。也许CS3不喜欢声音对象类。无论如何,谢谢你的帮助。