Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   не могу создать DataProvider (http://www.flasher.ru/forum/showthread.php?t=137267)

vasya87 09.03.2010 14:52

не могу создать DataProvider
 
Хочу создать программно комбобокс и для него предварительно делаю датапровайдер. Во всех примерах он делается приблизительно так:
Код AS3:

import fl.controls.ComboBox;
import fl.data.DataProvider;
//...
var dp:DataProvider=new DataProvider();

однако мой компилятор ругается на это следующим образом:
1136: Incorrect number of arguments. Expected 3.
путём подбора нахожу, что он почему-то хочет коммбинацию Number,String,Number, то есть, например
Код AS3:

var dp:DataProvider=new DataProvider(1,"2",3);

в таком случае при попытке добавления тривиального
Код AS3:

dp.addItem({label:"Item 1"});

выдаёт
1061: Call to a possibly undefined method addItem through a reference with static type src:DataProvider.
wtf??
p.s. название темы исправил

Добавлено через 20 минут
вопрос решён, пожалуйста удалите

Волгоградец 09.03.2010 15:14

Надо добавить контрол в библиотеку.

vasya87 09.03.2010 16:50

какой?..

до меня просто дошло, что можно это вообще миновать:
Код AS3:

var p1:Object={label:"label1"};
ac.addItem(p1);

а так не приведи Господь ещё с датапровайдером столкнуться... )

p0okm 10.03.2010 19:58

Я извиняюсь, но у меня похожая проблема ...

Взял листинг из Адобовского хелпа http://livedocs.adobe.com/flash/9.0/...ls/Button.html

Код AS3:

package
{
    import fl.controls.Button;
    import fl.controls.TextArea;
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.text.TextFormat;
 
    public class ButtonExample extends Sprite
    {
        private var b1:Button;
        private var b2:Button;     
        private var b3:Button;
        private var ta:TextArea;
 
        public function ButtonExample() {
            createTraceField();
            setupButtons();
        }
        private function createTraceField():void {
            ta = new TextArea();
            ta.setSize(200, 300);
            ta.move(200, 10);
            addChild(ta);
        }
        private function setupButtons():void {
            b1 = new Button();
            b2 = new Button();
            b3 = new Button();
 
            b1.width = 160;
            b2.width = 160;
            b3.width = 160;
 
            b1.move(10,10);
            b2.move(10,40);
            b3.move(10,70);
 
            b1.label = "Default Button";
            b2.label = "Custom Styled Button";
            b3.label = "Toggle Button";
 
            b2.setStyle("textFormat", new TextFormat("Georgia"));
 
            b3.toggle = true;
 
            b1.addEventListener(MouseEvent.CLICK, buttonClick);
            b2.addEventListener(MouseEvent.CLICK, buttonClick);
            b3.addEventListener(MouseEvent.CLICK, buttonClick);
 
            addChild(b1);
            addChild(b2);
            addChild(b3);
        }
        private function buttonClick(e:MouseEvent) {
            var button:Button = e.target as Button;
            ta.appendText(button.label + "\n");
        }
    }
}

скопировал в Flash CS4 и получил ошибку компиляции 1046 и 1172 типа нет класса Button.

Не пойму какая ещё библиотека ему нужна если компонентные кнопки итак есть.

Волгоградец 11.03.2010 11:21

http://www.flasher.ru/forum/showpost...03&postcount=2

p0okm 13.03.2010 20:53

Да, спасибо, но бесит Адобовский хелп, неуже ли нельзя было про это упомянуть при описании примера.


Часовой пояс GMT +4, время: 21:23.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.