تعيين Movieclips المتداخلة إلى صفيف متعدد الأبعاد في فلاش AS2

StackOverflow https://stackoverflow.com/questions/543721

سؤال

لدي 5 Movieclips يسمى ROW1، ROW2، ...، ROW5. داخل كل صف هي movieclips Let1، Let2، ...، Let15. أريد تعيين جميع مقاطع الرسالة إلى صفيف ثنائي الأبعاد. هذه متابعة لسؤال سابق الوصول بشكل حيوي إلى مقاطع فيلم متداخلة في Flash ActionScript 2 .

أحاول هذا:

Var LetterClips: صفيف = []؛

ل (var i = 1؛ أنا <= 5؛ i ++) {

letterClips[i] = new Array(16);

//var row:MovieClip = _root["row" + i];
//rowClips.push(row);

for ( var j = 1; j <= 15; j++) {

    var letter:MovieClip = _root["row" + i]["let" + j];

    letterClips[i].push(letter);

}

}

هل كانت مفيدة؟

المحلول

حسنا، إذا كنت تستخدم

letterClips[i].push(letter);

هذا سوف يضيف "حرف" إلى نهاية الصفيف وزيادة حجمه (بنسبة 1). لذلك ستبدأ في إضافة أفلام "حرف" في الموضع 16، وتابع 17، 18، ...

الحل 1: استبدال

letterClips[i] = new Array(16);

مع

letterClips[i] = new Array();

الحل 2: استبدال

letterClips[i].push(letter);

مع

letterClips[i][j] = letter;

إما أن يعمل واحد.

ملاحظة: لاحظ أيضا ذلك منذ مؤشراتك (اي جاي) ابدأ في 1، 0] [J و i] [0 الفتحات سوف تكون غير معرف بحلول الوقت الذي تذهب فيه من خلال كل التكرير.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top