![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+4 29.10.08]
[+4 31.10.08] Регистрация: Jan 2008
Сообщений: 38
|
При подстановке класса SimpleButtonDemo в качестве класса документа, функция SimpleButtonDemo начинает выполняться при загрузке флешки, без вызова. Как это можно прекратить?
Планируется что функция будет принимать параметры и в соответствии с ними создавать кнопки.(данные будут браться из массива, а параметры определять как сортировать, по каким критериям выбирать из массива и начиная с какого номера выводить) =================================== И насчёт передачи параметров. Хотя это наверное немного не в тему. Если я определяю SimpleButtonDemo: 1. или 2. и вызываю её из фла файла строкой то появляется ошибка: Если для первого случая, то не нравится переданный параметр: #1034: Type Coercion failed: cannot convert "А" to main.SimpleButtonDemo. at main::SimpleButtonDemo/main::frame1() 3. выдаёт ошибку: Как тогда передать несколько параметров... и чтобы оно работало, и чем функцию не устраивает первый вариант. Класс SimpleButtonDemo package main {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class SimpleButtonDemo extends MovieClip {
//=============================================
//==============================================
private var _r1:String;
//private var _r2:String;
//private var _r3:String;
public function SimpleButtonDemo( ... r1) {
_r1=r1[0];
trace('Вывод _r1 '+_r1);
// _r2=r[0];
// _r3=r[1];
var perehod2:Array; // массив переходов
perehod2 = new Array();
perehod2[0]=["Название", "Механика", "0", "1", "3"];
perehod2[1]=["Название", "Механика", "0", "1", "2"];
perehod2[2]=["Название", "Электро", "0", "1", "4"];
perehod2[3]=["Название", "Механика", "0", "1", "5"];
perehod2[4]=["Название", "Электро", "0", "2", "7"];
perehod2[5]=["Название", "Механика", "0", "2", "6"];
trace('Вывод '+perehod2.length);
for (var i:int=0; i<perehod2.length; i++){
var button1:RectangleButton = new RectangleButton( perehod2[i][0], 120, 20 );
button1.x = 100;
button1.y = 100+i*20;
button1.name = "p" + i;
button1.addEventListener(MouseEvent.MOUSE_DOWN, limys4);
addChild(button1);
}
}
}
}
|
|
|||||
|
[+1.3 31.10.08]
Регистрация: Sep 2008
Сообщений: 8
|
Из хелпа: Each SWF file has an associated ActionScript class, known as the main class of the SWF file. When Flash Player opens a SWF file in an HTML page, Flash Player calls the constructor function for that class and the instance that is created (which is always a type of display object) is added as a child of the Stage object.
Попробуйте оставить конструктор без параметров, а инициализацию производить в отдельном методе, его и вызывать с вашими параметрами. |
|
|||||
|
[+4 29.10.08]
[+4 31.10.08] Регистрация: Jan 2008
Сообщений: 38
|
Спасибо, всё оказалось действительно просто.
Функцию SimpleButtonDemo прописал в fla, а класс документа вообще не стал проставлять. |
![]() |
![]() |
Часовой пояс GMT +4, время: 06:55. |
|
|
« Предыдущая тема | Следующая тема » |
|
|