ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение SergoTawer » 05 окт 2013, 10:10

Хотел вызывать окно по нажатию на кнопку.
Вот код:
  1. var button:btn1 = new btn1();
  2. addChild(button);
  3. button.x = 225;
  4. button.y = 200;
  5. var dil:dialogid1 = new dialogid1();
  6. button.addEventListener(MouseEvent.CLICK,dialog("Название","Текст"));
  7. function dialog(name1:String,texting:String,event:MouseEvent=null)
  8. {
  9.     var namedil:TextField = new TextField();
  10.     var textdil:TextField = new TextField();
  11.     namedil.text = name1;
  12.     textdil.text = texting;
  13.     addChild(dil);
  14.     dil.x = 225;
  15.     dil.y = 200;
  16. }

Ошибка
  1. TypeError: Error #2007: Параметр listener не должен быть равен нулю.
  2.     at flash.events::EventDispatcher/addEventListener()
  3.     at button1_fla::MainTimeline/frame1()

Кнопка появляется, но при нажатии ничего не происходит.
SergoTawer

 
Сообщения: 1
Зарегистрирован: 03 окт 2013, 20:33
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение sasha^ » 05 окт 2013, 10:41

SergoTawer, нда.... в слушатель событий нужно передавать литерал функции, а не вызывать ее...
можно переписать так....
  1. var button:btn1 = new btn1();
  2. addChild(button);
  3. button.x = 225;
  4. button.y = 200;
  5. var dil:dialogid1 = new dialogid1();
  6. button.addEventListener(MouseEvent.CLICK,myfunc);
  7. function myfunc(e:Event=null) {
  8.     dialog("Название","Текст");
  9. }
  10. function dialog(name1:String,texting:String)
  11. {
  12.     var namedil:TextField = new TextField();
  13.     var textdil:TextField = new TextField();
  14.     namedil.text = name1;
  15.     textdil.text = texting;
  16.     addChild(dil);
  17.     dil.x = 225;
  18.     dil.y = 200;
  19. }


P.S. код можно сделать лучше, выходя из ситуации... но это с минимальными "обработками" рабочий код... не проверял...
sasha^

 
Сообщения: 711
Зарегистрирован: 10 сен 2012, 16:52
Благодарил (а): 1 раз.
Поблагодарили: 136 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение renault » 11 фев 2014, 14:39

Здравствуйте местные знатоки. Прошу помощи в редактировании .fla файла (я не совсем силён в этом, я начинающий флешер), в adobe flash при попытке воспроизвести выскакивают 3 ошибки, что с ними делать не могу понять.
Изображение
Изображение

 Вот сам код
  1. package fl.display
  2. {
  3.     import flash.display.*;
  4.     import flash.errors.*;
  5.     import flash.events.*;
  6.     import flash.system.*;
  7.     import flash.utils.*;
  8.  
  9.     public class ProLoaderInfo extends EventDispatcher
  10.     {
  11.         private var _proLoader:ProLoader;
  12.         private var _realLI:LoaderInfo;
  13.         private var _realContentLI:LoaderInfo;
  14.         private var _rslPreloaderLoaded:Boolean;
  15.         private var _doneProgressStalling:Boolean;
  16.         private var _numAdded:int;
  17.         var _lcRequestedContentParentSet:Boolean;
  18.  
  19.         public function ProLoaderInfo(param1:ProLoader)
  20.         {
  21.             this._realContentLI = null;
  22.             this._lcRequestedContentParentSet = false;
  23.             this._rslPreloaderLoaded = false;
  24.             this._doneProgressStalling = false;
  25.             this._numAdded = 0;
  26.             this._proLoader = param1;
  27.             this._realLI = param1.realLoader.contentLoaderInfo;
  28.             this._realLI.addEventListener(AsyncErrorEvent.ASYNC_ERROR, this.handleAsyncErrorEvent, false, 0, true);
  29.             this._realLI.addEventListener(Event.COMPLETE, this.handleLoaderInfoEvent, false, 0, true);
  30.             this._realLI.addEventListener(HTTPStatusEvent.HTTP_STATUS, this.handleLoaderInfoEvent, false, 0, true);
  31.             this._realLI.addEventListener(Event.INIT, this.handleLoaderInfoEvent, false, 0, true);
  32.             this._realLI.addEventListener(IOErrorEvent.IO_ERROR, this.handleLoaderInfoEvent, false, 0, true);
  33.             this._realLI.addEventListener(Event.OPEN, this.handleLoaderInfoEvent, false, 0, true);
  34.             this._realLI.addEventListener(ProgressEvent.PROGRESS, this.handleProgressEvent, false, 0, true);
  35.             this._realLI.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.handleSecurityErrorEvent, false, 0, true);
  36.             this._realLI.addEventListener(Event.UNLOAD, this.handleLoaderInfoEvent, false, 0, true);
  37.             return;
  38.         }// end function
  39.  
  40.         function reset() : void
  41.         {
  42.             this._realContentLI = null;
  43.             this._rslPreloaderLoaded = false;
  44.             this._doneProgressStalling = false;
  45.             this._lcRequestedContentParentSet = false;
  46.             return;
  47.         }// end function
  48.  
  49.         public function get actionScriptVersion() : uint
  50.         {
  51.             return this._realLI.actionScriptVersion;
  52.         }// end function
  53.  
  54.         public function get applicationDomain() : ApplicationDomain
  55.         {
  56.             return this._realLI.applicationDomain;
  57.         }// end function
  58.  
  59.         public function get bytes() : ByteArray
  60.         {
  61.             return this._realLI.bytes;
  62.         }// end function
  63.  
  64.         public function get bytesLoaded() : uint
  65.         {
  66.             if (this._realLI.bytesLoaded >= this._realLI.bytesTotal && this._proLoader.content == null)
  67.             {
  68.                 return (this._realLI.bytesTotal - 1);
  69.             }
  70.             return this._realLI.bytesLoaded;
  71.         }// end function
  72.  
  73.         public function get bytesTotal() : uint
  74.         {
  75.             return this._realLI.bytesTotal;
  76.         }// end function
  77.  
  78.         public function get childAllowsParent() : Boolean
  79.         {
  80.             return this._realLI.childAllowsParent;
  81.         }// end function
  82.  
  83.         public function get childSandboxBridge() : Object
  84.         {
  85.             if (this._realContentLI != null)
  86.             {
  87.                 return this._realContentLI["childSandboxBridge"];
  88.             }
  89.             return this._realLI["childSandboxBridge"];
  90.         }// end function
  91.  
  92.         public function set childSandboxBridge(param1:Object) : void
  93.         {
  94.             if (this._realContentLI != null)
  95.             {
  96.                 this._realContentLI["childSandboxBridge"] = param1;
  97.             }
  98.             else
  99.             {
  100.                 this._realLI["childSandboxBridge"] = param1;
  101.             }
  102.             return;
  103.         }// end function
  104.  
  105.         public function get content() : DisplayObject
  106.         {
  107.             return this._proLoader.content;
  108.         }// end function
  109.  
  110.         public function get contentType() : String
  111.         {
  112.             return this._realLI.contentType;
  113.         }// end function
  114.  
  115.         public function get frameRate() : Number
  116.         {
  117.             return this._realLI.frameRate;
  118.         }// end function
  119.  
  120.         public function get height() : int
  121.         {
  122.             return this._realLI.height;
  123.         }// end function
  124.  
  125.         public function get isURLInaccessible() : Boolean
  126.         {
  127.             return this._realLI.isURLInaccessible;
  128.         }// end function
  129.  
  130.         public function get loader() : ProLoader
  131.         {
  132.             return this._proLoader;
  133.         }// end function
  134.  
  135.         public function get loaderURL() : String
  136.         {
  137.             return this._realLI.loaderURL;
  138.         }// end function
  139.  
  140.         public function get parameters() : Object
  141.         {
  142.             return this._realLI.parameters;
  143.         }// end function
  144.  
  145.         public function get parentAllowsChild() : Boolean
  146.         {
  147.             return this._realLI.parentAllowsChild;
  148.         }// end function
  149.  
  150.         public function get parentSandboxBridge() : Object
  151.         {
  152.             if (this._realContentLI != null)
  153.             {
  154.                 return this._realContentLI["parentSandboxBridge"];
  155.             }
  156.             return this._realLI["parentSandboxBridge"];
  157.         }// end function
  158.  
  159.         public function set parentSandboxBridge(param1:Object)
  160.         {
  161.             if (this._realContentLI != null)
  162.             {
  163.                 this._realContentLI["parentSandboxBridge"] = param1;
  164.             }
  165.             else
  166.             {
  167.                 this._realLI["parentSandboxBridge"] = param1;
  168.             }
  169.             return;
  170.         }// end function
  171.  
  172.         public function get sameDomain() : Boolean
  173.         {
  174.             return this._realLI.sameDomain;
  175.         }// end function
  176.  
  177.         public function get sharedEvents() : EventDispatcher
  178.         {
  179.             if (this._realContentLI != null)
  180.             {
  181.                 return this._realContentLI.sharedEvents;
  182.             }
  183.             return this._realLI.sharedEvents;
  184.         }// end function
  185.  
  186.         public function get swfVersion() : uint
  187.         {
  188.             return this._realLI.swfVersion;
  189.         }// end function
  190.  
  191.         public function get url() : String
  192.         {
  193.             return this._realLI.url;
  194.         }// end function
  195.  
  196.         public function get width() : int
  197.         {
  198.             return this._realLI.width;
  199.         }// end function
  200.  
  201.         override public function dispatchEvent(event:Event) : Boolean
  202.         {
  203.             Error.throwError(IllegalOperationError, 2118);
  204.             return false;
  205.         }// end function
  206.  
  207.         private function handleAsyncErrorEvent(event:AsyncErrorEvent) : void
  208.         {
  209.             if (!this._lcRequestedContentParentSet)
  210.             {
  211.                 super.dispatchEvent(event);
  212.             }
  213.             return;
  214.         }// end function
  215.  
  216.         private function handleLoaderInfoEvent(event:Event) : void
  217.         {
  218.             var theContent:DisplayObject;
  219.             var theName:String;
  220.             var rslPreloader:Object;
  221.             var e:* = event;
  222.             switch(e.type)
  223.             {
  224.                 case HTTPStatusEvent.HTTP_STATUS:
  225.                 case IOErrorEvent.IO_ERROR:
  226.                 case Event.OPEN:
  227.                 case Event.UNLOAD:
  228.                 {
  229.                     super.dispatchEvent(e);
  230.                     break;
  231.                 }
  232.                 case Event.INIT:
  233.                 {
  234.                     if (!this._rslPreloaderLoaded)
  235.                     {
  236.                         try
  237.                         {
  238.                             theContent = this._realLI.content;
  239.                             theName = getQualifiedClassName(theContent);
  240.                             if (theName.substr(-13) == "__Preloader__")
  241.                             {
  242.                                 rslPreloader = theContent["__rslPreloader"];
  243.                                 if (rslPreloader != null)
  244.                                 {
  245.                                     theName = getQualifiedClassName(rslPreloader);
  246.                                     if (theName == "fl.rsl::RSLPreloader")
  247.                                     {
  248.                                         this._rslPreloaderLoaded = true;
  249.                                         this._numAdded = 0;
  250.                                         theContent.addEventListener(Event.ADDED, this.handleAddedEvent, false, 0, true);
  251.                                     }
  252.                                 }
  253.                             }
  254.                         }
  255.                         catch (err:Error)
  256.                         {
  257.                             _rslPreloaderLoaded = false;
  258.                         }
  259.                     }
  260.                     if (!this._rslPreloaderLoaded)
  261.                     {
  262.                         this._proLoader.loadDoneCallback(theContent);
  263.                         if (!this._doneProgressStalling && this._realLI.bytesLoaded >= this._realLI.bytesTotal)
  264.                         {
  265.                             this._doneProgressStalling = true;
  266.                             super.dispatchEvent(new ProgressEvent(ProgressEvent.PROGRESS, false, false, this._realLI.bytesLoaded, this._realLI.bytesTotal));
  267.                         }
  268.                         super.dispatchEvent(e);
  269.                     }
  270.                     break;
  271.                 }
  272.                 case Event.COMPLETE:
  273.                 {
  274.                     if (!this._rslPreloaderLoaded)
  275.                     {
  276.                         super.dispatchEvent(e);
  277.                     }
  278.                     break;
  279.                 }
  280.                 default:
  281.                 {
  282.                     break;
  283.                 }
  284.             }
  285.             return;
  286.         }// end function
  287.  
  288.         private function handleProgressEvent(event:ProgressEvent) : void
  289.         {
  290.             if (this._doneProgressStalling || event.bytesLoaded < event.bytesTotal)
  291.             {
  292.                 super.dispatchEvent(event);
  293.             }
  294.             return;
  295.         }// end function
  296.  
  297.         private function handleSecurityErrorEvent(event:SecurityErrorEvent) : void
  298.         {
  299.             if (!this._lcRequestedContentParentSet || event.errorID != 2047)
  300.             {
  301.                 super.dispatchEvent(event);
  302.             }
  303.             return;
  304.         }// end function
  305.  
  306.         private function handleAddedEvent(event:Event) : void
  307.         {
  308.             var _loc_2:* = event.target as DisplayObject;
  309.             var _loc_3:* = event.currentTarget as DisplayObjectContainer;
  310.             if (_loc_2 != null && _loc_3 != null && _loc_2.parent == _loc_3)
  311.             {
  312.                 var _loc_4:* = this;
  313.                 var _loc_5:* = this._numAdded + 1;
  314.                 _loc_4._numAdded = _loc_5;
  315.             }
  316.             if (this._numAdded > 1)
  317.             {
  318.                 event.currentTarget.removeEventListener(Event.ADDED, this.handleAddedEvent);
  319.                 if (this._proLoader.loadDoneCallback(_loc_2))
  320.                 {
  321.                     if (!this._doneProgressStalling && this._realLI.bytesLoaded >= this._realLI.bytesTotal)
  322.                     {
  323.                         this._doneProgressStalling = true;
  324.                         super.dispatchEvent(new ProgressEvent(ProgressEvent.PROGRESS, false, false, this._realLI.bytesLoaded, this._realLI.bytesTotal));
  325.                     }
  326.                     super.dispatchEvent(new Event(Event.INIT, false, false));
  327.                     super.dispatchEvent(new Event(Event.COMPLETE, false, false));
  328.                 }
  329.             }
  330.             return;
  331.         }// end function
  332.  
  333.         function set realContentLoaderInfo(param1:LoaderInfo) : void
  334.         {
  335.             var _loc_2:* = null;
  336.             this._realContentLI = param1;
  337.             this._realContentLI.addEventListener(Event.COMPLETE, this.handleRealContentEvent, false, 0, true);
  338.             this._realContentLI.addEventListener(Event.INIT, this.handleRealContentEvent, false, 0, true);
  339.             this._realContentLI.addEventListener(IOErrorEvent.IO_ERROR, this.handleLoaderInfoEvent, false, 0, true);
  340.             this._realContentLI.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.handleSecurityErrorEvent, false, 0, true);
  341.             this._rslPreloaderLoaded = true;
  342.             if (this._realContentLI.hasOwnProperty("childSandboxBridge"))
  343.             {
  344.                 try
  345.                 {
  346.                     _loc_2 = this._realLI["childSandboxBridge"];
  347.                     if (_loc_2 != null)
  348.                     {
  349.                         this._realContentLI["childSandboxBridge"] = _loc_2;
  350.                     }
  351.                 }
  352.                 catch (se:SecurityError)
  353.                 {
  354.                     try
  355.                     {
  356.                     }
  357.                     _loc_2 = this._realLI["parentSandboxBridge"];
  358.                     if (_loc_2 != null)
  359.                     {
  360.                         this._realContentLI["parentSandboxBridge"] = _loc_2;
  361.                     }
  362.                 }
  363.                 catch (se:SecurityError)
  364.                 {
  365.                     }
  366.             }
  367.             return;
  368.         }// end function
  369.  
  370.         function get realContentLoaderInfo() : LoaderInfo
  371.         {
  372.             return this._realContentLI;
  373.         }// end function
  374.  
  375.         private function handleRealContentEvent(event:Event) : void
  376.         {
  377.             var d:DisplayObject;
  378.             var e:* = event;
  379.             if (e.type == Event.INIT)
  380.             {
  381.                 try
  382.                 {
  383.                     d = this._realContentLI.content;
  384.                 }
  385.                 catch (se:SecurityError)
  386.                 {
  387.                     d;
  388.                 }
  389.                 this._proLoader.loadDoneCallback(d);
  390.                 if (!this._doneProgressStalling && this._realLI.bytesLoaded >= this._realLI.bytesTotal)
  391.                 {
  392.                     this._doneProgressStalling = true;
  393.                     super.dispatchEvent(new ProgressEvent(ProgressEvent.PROGRESS, false, false, this._realLI.bytesLoaded, this._realLI.bytesTotal));
  394.                 }
  395.             }
  396.             super.dispatchEvent(e);
  397.             return;
  398.         }// end function
  399.  
  400.     }
  401. }
  402.  


вот сам fla файл - тыц
renault

 
Сообщения: 1
Зарегистрирован: 11 фев 2014, 14:26
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение sasha^ » 11 фев 2014, 16:16

ошибка в использовании декомпилятора...=)
ну а вообще не могут быть try без catch и наоборот.. там их(пустые блоки) нужно удалить.. вот и все
sasha^

 
Сообщения: 711
Зарегистрирован: 10 сен 2012, 16:52
Благодарил (а): 1 раз.
Поблагодарили: 136 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение Agiliter » 22 апр 2014, 11:24

:)
С уважением,
М.Ф.
Agiliter

 
Сообщения: 112
Зарегистрирован: 01 фев 2014, 13:46
Благодарил (а): 29 раз.
Поблагодарили: 0 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение Twoberg » 25 июн 2014, 16:41

помогите, кто сможет:
задача такая: есть некая строка String . Она из букв и цифр (одно число): "слово слово 123456".
Как выдать в текстовое поле вот эти цифры, вычленить их из строки???????
пробовал RegExp, но выдает цифры через запятую. в Array тоже никак, потому что это переменная
Twoberg

 
Сообщения: 20
Зарегистрирован: 19 апр 2014, 20:23
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение sasha^ » 25 июн 2014, 17:23

помогите, кто сможет:
задача такая: есть некая строка String . Она из букв и цифр (одно число): "слово слово 123456".
Как выдать в текстовое поле вот эти цифры, вычленить их из строки???????

легко.. есть такое как регулярные выражения... код будет примерно такой...
  1. var s:String = "текст просто 231231"; // строка с числом...
  2. var i:int = s.match(/^.*?(\d+).*$/)[1]; // в переменной i мы будем иметь наше число..

пояснение... match - функция поиска.. первая маска будет в 1 элементе массива, т.к. в 0 будет вся строка
/ - ограничители, .* - любое количество символов, но по умолчанию квантификаторы жадные(ищут как можно больше символов, соответствующих шаблону), знак вопроса делает их ленивыми(ищут как можно меньше), далее идет \d+ - больше 1 цифры(\d- цифра) и потом сколько угодно любых символов.. скобки - это подмаска, т.е. сохраняется в массив все что в них
:)

За это сообщение автора sasha^ поблагодарили - 2:
Agiliter, Twoberg
sasha^

 
Сообщения: 711
Зарегистрирован: 10 сен 2012, 16:52
Благодарил (а): 1 раз.
Поблагодарили: 136 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение Serge » 25 июн 2014, 19:52

Нашел такой вот сайт для регулярок - http://regex101.com/ он тащит.
http://sevenlines.com.ua - разработка и продвижение сайтов
Serge
WEB Team
WEB Team
 
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55
Благодарил (а): 2 раз.
Поблагодарили: 65 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение Twoberg » 09 июл 2014, 23:52

в каком случае "appendText" добавляет символы в самый конец (после последней буквы), а когда немного "отсекает" несколько букв и добавляет строку куда-то между символами? Нужно например содержимое в text field 1 добавить в конец text field 2, но при комманде appendText добавление идет не в самом конце, а как будто игнорируются последние буквы без видимой причины. сначала я решил проблемы, добавляя пробелы перед кавычками, но теперь столкнулся с ситуацией, когда и пробелы не помогают. есть какая-то typical причина, невидимая мной?
Twoberg

 
Сообщения: 20
Зарегистрирован: 19 апр 2014, 20:23
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.

Re: ПРОСТОЙ ВОПРОС - ОТВЕТ (только Flash)

Сообщение alexandr_ratush » 09 июл 2014, 23:54

Кидайте код и примеры текстов, будем смотреть что там у вас. Никогда не сталкивался с похожим.
Аватара пользователя
alexandr_ratush

 
Сообщения: 94
Зарегистрирован: 05 мар 2014, 21:47
Откуда: Ukraine
Благодарил (а): 2 раз.
Поблагодарили: 25 раз.

Пред.След.

Вернуться в Программирование на Flash



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron