Форум 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)
-   -   trace(this._name) не работает!! что не так? (http://www.flasher.ru/forum/showthread.php?t=121825)

maxx_tlt2 24.02.2009 14:58

trace(this._name) не работает!! что не так?
 
Здравствуйте!
У меня есть кнопка в рабочей зоне. Поставил ей имя "qwe". Хочу при наведении прочитать её имя, т.е. "qwe".
Код кнопки следующий:
Код AS1/AS2:

on (rollOver, dragOver) {trace(this._name);}

Ничего не происходит!! :bb:

Пишу что то вроде:
Код AS1/AS2:

on (rollOver, dragOver) {trace(this._name+"23");}

трейсит: 23 :bb:

после долгих заморочек понял что он просит имя не кнопки, а рабочей области! Абсурд какой то, пишу же "this"

КАК ВЫВОДИТЬ ИМЯ КНОПКИ?? :wacko:

iNils 24.02.2009 15:06

Все верно, код на кнопках всегда ссылается на клип где кнопки расположены.
Пишите код в кадрах.

maxx_tlt2 24.02.2009 15:15

дело в том, что у меня 50 кнопок (офисные помещения в здании), разных размеров и форм(поэтому немогу генерить).

При наведении на кнопку (офис 101) я должен получать данные из массива с именем of101 например.

Я нехотел делать к каждой кнопке код типа _root.x = of101, т.е. не хотел в кнопках лезть в код вообще (сделать что то универсальное), и решил что просто назову каждую кнопку как офис. А тут такая фигня :(

Что нибудь можете посоветовать? или делать кодом?

iNils 24.02.2009 15:24

Универсальное на кнопках? :D Это подход 4-ой версии флеша.
У вас 50 кнопок, значит 50 раз повторяется код!
Учите классы.

maxx_tlt2 24.02.2009 15:30

Спасибо :))

KiL33 24.02.2009 15:47

Используя это:
for (i in _root) {
можем сделать это:

Код AS1/AS2:

function addText(obj:Object, hintMessage:String) {
obj.onRollOver = function() {
txt.text=hintMessage
};
}
for (i in _root) {
addText(_root[i],_root[i]._name);
}

В поле txt выводится Instance Name твоего мувика.
:)

chingachgoog 24.02.2009 19:57

Главное слово тут КНОПКА (объект класса Button). Замените ее на мувиклип (щелчок по Instance behavior) и ваш код даже на мувиклипе (стиль 5-го флеша) заработает.


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

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