Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   ComboBox и Color (http://www.flasher.ru/forum/showthread.php?t=93144)

kili 14.03.2007 22:14

ComboBox и Color
 
Привет всем. Моя задача хотя не сложная но выхода не вижу.
Два символа MoveClip и один ComboBox. Мне нужно сделать так чтоб при выбыре первый строки менял цвет первый символ, а при выборе второй второй символ(при этом чтоб первый символ стал тким же как раньше).
Посылаю код, может кто поможет. Я не могу усделить тут алгоритм

import mx.controls.ComboBox;
k1Color=new Color(_root.k1);
k2Color=new Color(_root.k2);
this.createClassObject(ComboBox,"com_cb",20);
com_cb._x=5;
com_cb._y=250;
var com_cb:ComboBox=this['com_cb'];
var list:Object={};
list.change=function(event:Object):Void
{
if (com_cb.selectedItem.label)
{
k1Color.setRGB(0xCCFF00);

}
else
{
k1Color.setRGB(0x000000);
}

};

{
if (com_cb.selectedItem.label)
{
k2Color.setRGB(0xCCFF00);
}
else
{
k2Color.setRGB(0x000000);
}

};
com_cb.addItem({label:""});
com_cb.addItem({label:"k1"});
com_cb.addItem({label:"k2"});
com_cb.addEventListener("change",kuc);

etc 14.03.2007 22:15

Оформите свой код тегами [code][/code].

kili 14.03.2007 22:19

В теоре я тоже это понимаю. А вот при практике это все отказывается работать.Хотелась бы по подробней, please....

iNils 14.03.2007 22:24

Повторное предупреждение: оформите свой код тегами [code][/code] (это около вашего сообщения начйти кнопку "изменить" и нажать ее), иначе тема будет закрыта, а вы получите плюс.

silin 15.03.2007 00:00

алгоритм простой: ставим для выбранного один цвет, для остальных другой:
Код:

import mx.controls.ComboBox;
var com_cb:ComboBox = createClassObject(ComboBox, "com_cb", 20);
com_cb.move(5,250);
com_cb.addItem({label:""});
com_cb.addItem({label:"k1",data:new Color(k1)});
com_cb.addItem({label:"k2",data:new Color(k2)});
com_cb.addEventListener("change", cbChange);
function cbChange(){
        var dp=com_cb.dataProvider;
        for(var i in dp){
                var clr=(i==com_cb.selectedIndex) ? 0xCCFF00 : 0x000000;
                dp[i].data.setRGB(clr)
        }
}



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

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