Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   как поменять цвет кнопки програмно (http://www.flasher.ru/forum/showthread.php?t=48534)

robotech 29.08.2003 14:07

как поменять цвет кнопки програмно
 
Такая проблема:
хочу сделать кнопку, которая будет менять цвет при нажатии, тоесть не посещенные кнопки - один цвет, посещенные кнопки - другой, при этом незасовывая в мувик, а просто делаеш один символ кнопки и вешаеш на копии разные URL, и есстественно сам код по замене цвета

Dimonius 29.08.2003 14:35

Запихивай в мувик. Так надежнее. А так как кнопка - это тот же мувик только с зашитыми системными функциями, то смысла нет путать все дело ИМХО.

2K WebStudio 29.08.2003 19:46

Ха!
 
Цитата:

Оригинал написал(а) Dimonius
Запихивай в мувик. Так надежнее. А так как кнопка - это тот же мувик только с зашитыми системными функциями, то смысла нет путать все дело ИМХО.
Хорошо сказал, если не затруднит, объясни, чем же это надёжнее?
А вот ответ:
Вставь это на первый кадр мувика!

k = 4;
kx = 100;
ky = 20;
links=new Array("0xff0000", "0x00ff00", "0x0000ff");
//links[0] - link
//links[1] - alink
//links[2] - vlink
for (i=0; i<k; i++) {
mc = _root.createEmptyMovieClip("button"+i, i);
mc._x += (kx+20)*i;
mc.beginFill(0xffffff, 100);
mc.lineTo(0, ky);
mc.lineTo(kx, 0);
mc.moveTo(kx, ky);
mc.lineTo(0, ky);
mc.lineTo(kx, 0);
mc.endFill();
_root["button"+i].c = new Color(["button"+i]);
//Íàçûâàòü ïåðåìåííóþ ñ - color íåëüçÿ!
_root["button"+i].c.setRGB(links[0]);
mc.onPress = function() {
_root.lastactivelink.c.setRGB(links[2]);
this.c.setRGB(links[1]);
_root.lastactivelink=this;
};
}
Если ты мне расскажешь, как пользоваться beginGradientFill, я буду очень рад и благодарен!!!

robotech 02.09.2003 13:01

Как пользоваться beginGradientFill даже не имею представления!!! А за код спасибо! Хотя я еще не пробовал применить его и несовсем понимаю! Это мувик, правильно? Просто вытащить его из библиотеки и поменять только URL без дублирования нельзя, правильно я все понимаю????

Штрек 02.09.2003 15:13

Хреновый скрипт.
Дюже большой.
Кроме того спрашивали про кнопку,
а ты мувик тулишь.
Надо просто на onRealise /кнопку отпустили, значит уже
по ней сходили/ повесить newColor.
И ВСЁ!

Штрек 02.09.2003 15:22

На кнопку kn1 вешаем
on (release) {
tt=new Color(kn1);
tt.setRGB(0xff00ff);
}
И ВСЁ! :D
Правда по проще будет?

2K WebStudio 02.09.2003 19:39

Цитата:

Оригинал написал(а) Штрек
Хреновый скрипт.
Дюже большой.
Кроме того спрашивали про кнопку,
а ты мувик тулишь.
Надо просто на onRealise /кнопку отпустили, значит уже
по ней сходили/ повесить newColor.
И ВСЁ!

Так вот!
То, что он просил это всё понятно, просто объяснять что, к какому мувику приладить - мне влом!!!
А тут всё понятно!
А если ты можешь сократить этот скрипт и ещё и объяснить что к чему - я буду очень рад!

Штрек 02.09.2003 22:33

Не нужны здесь никакие мувики /о чём с самого начала и говорилось/ - это как винтом гвозди забивать. :D

robotech 04.09.2003 13:05

Код простой, но у меня не работает в том виде который тут написан, может чтото нужно изменить?? Что такое kn1 ?
Объясни как он работает! Если не влом ;)
А так, спасибо за отклик!

robotech 04.09.2003 13:09

Я уже и сам разобрался:

kn1 - индивидуальное имя кнопки (Instance).

Спасибо, все пашет, без шума и пыли!!!


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

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