0

曲のリストがあり、項目をダブルクリックすると曲を再生します。私はこのようにします。aList はリストのインスタンス名です。

aList.addEventListener(MouseEvent.DOUBLE_CLICK, changeSong);

function changeSong(e:MouseEvent) {
     ....
     song = e.target.selectedItem.data;
     ....
}

(song = e.target.selectedItem.data;) の部分にエラーがあります。間違ったプロパティを使用したようです。

ReferenceError: Error #1069: Property selectedItem not found on    fl.controls.listClasses.CellRenderer and there is no default value.
at playlist_fla::MainTimeline/changeSong()

アイテムのデータを適切に取得する方法を知っている人はいますか。私の構文が間違っていると思うからです。

前もって感謝します。

4

1 に答える 1

0

List コンポーネントの dataProvider として何を割り当てましたか?

e.target.data追加のプロパティを持つオブジェクトです。

データ オブジェクトのプロパティが不明な場合は、次のように繰り返すことができます。

for (var property:String in data)
{
    trace("data." + property + " = " + data[property]);
}

song 変数に割り当てようとしているのが標準の itemRenderer のラベルである場合、成功する可能性があります。

song = e.target.listData.label;

于 2013-02-16T10:37:32.890 に答える