PDA

Просмотр полной версии : [AS3]Flex. Использование классов. Помогите!


Brothers
22.11.2006, 18:01
Помогите пожалуйста, не могу понять в чём проблема. При сборке выдает ошибку 1061: Call to a possibly undefined method play through a reference with static type musicPlayer. Пробовал разбираться в примерах классов в документации Flex, но имел аналогичный результат. Заранее Спасибо!

musicPlayer.mxml:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*"
layout="vertical"
creationComplete = "initApp()" >
<mx:Script>
<![CDATA[
public var MyURL:String = "data/example.mp3";

public function initApp():void
{
var myP:musicPlayer = new musicPlayer;
myP.play("data/example.mp3");
}

]]>
</mx:Script>

<mx:TextArea id = "mainTxt" width="400" backgroundColor="#DDDDDD" editable="false" />

<mx:HBox width="400">
<mx:Label text="User Name:"/>
<mx:TextInput id="userNameTxt" width="100%" enter="mainTxt.text = Greeter.sayHello(userNameTxt.text);" />
</mx:HBox>
<mx:Button label="Play!" click="myP.play(MyURL);"/>
</mx:Application>


musicPlayer.as:

// ActionScript file
package {
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.display.Sprite;
[Bindable]
public static class musicPlayer extends Sprite{
var mySound:Sound = new Sound();
var channel:SoundChannel;

public function play(url:String):void{
mySound.load(url);
channel = mySound.play();
}

}
}

etc
22.11.2006, 18:20
Первый раз вижу, чтобы класс был статическим…
Убери static из объявления класса.

baron27
22.11.2006, 18:24
там и без статик ошибки, поэтому глянь пример из хелпа и посмотри, что у тебя.
http://livedocs.macromedia.com/flex/2/langref/flash/media/Sound.html

Brothers
22.11.2006, 18:48
там и без статик ошибки, поэтому глянь пример из хелпа и посмотри, что у тебя.
http://livedocs.macromedia.com/flex/2/langref/flash/media/Sound.html

Я пробовал возится с этим примером, он тоже не работает. У меня такая же ошибка с ним

baron27
22.11.2006, 19:05
Я пробовал возится с этим примером, он тоже не работает. У меня такая же ошибка с ним

пример рабочий - значит криво применял.
кстати, в нем показано, что надо использовать URLRequest для загрузки, а не просто строку - у тебя эта ошибка тоже присутствует.

Brothers
22.11.2006, 21:00
2 baron27
да... про URLRequest я забыл=) А можешь пример выложить, как ты его применял?

baron27
22.11.2006, 22:02
я его применял так, как он там написан => создал файл, вставил туда этот код, кинул в рабочую папку тестовую mp3шку и скомпилировал:)

Nirth
23.11.2006, 10:44
Пользователь Brothers получает предупреждение, воспользуйтесь поиском, ознакомтесь документацией, а только потом пишите в разделах Flash, Общие вопросы, Flex, ActionScript 3.0.

Перенес в раздел для новичков.