Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   beginFill + onRelease = ? (http://www.flasher.ru/forum/showthread.php?t=43668)

genius 06.03.2003 20:31

beginFill + onRelease = ?
 
coords - массив типа x0, y0, x1, y1, ...
alt - текст
задача - аналог html-ного тэга <map>

Код:

function CreatePolygon(coords, alt, j) {
        name = "movie" + j;
        _root.createEmptyMovieClip(name, j);
        eval(name).onRelease = _root.rel
        with (name) {
                beginFill(0x0000FF);
                lineStyle(1, 0xFF00FF, 100);
                for (i = 0; i < coords.length / 2; i++) {
                        x = coords[2 * i];
                        y = coords[2 * i + 1];
                        if (i == 0) {
                                moveTo(x, y);
                        } else {
                                lineTo(x, y);
                        }
                }
                endFill();
        }
        eval(name).useHandCursor = true
}
function rel() {
        trace("rel");
}

CreatePolygon(coords, alt, j)

объекты создаются, НО: мышка при наведении не меняется, onRelease не срабатывает. что это может быть такое.

Nox Noctis 06.03.2003 23:43

какой евал ? зачем евал ? :))

name = _root.createEmptyMovieClip("movie"+j, j);
name.onRelease = _root.rel;
name.useHandCursor = true;

TTS 07.03.2003 00:14

eval...
 
with(eval(name)) - если уж на то пошло...

Techmaker 07.03.2003 18:22

with(eval(name)) :
плз... обьясните - что такое "eval " и что такое "with " ато - я незнаю... млин ... :) :) :)

genius 07.03.2003 20:49

name = "Movie"
Movie._x = 10
eval(name)._x = 20
trace(Movie._x)
// 20

я использую eval для обращения к мувиклипам, имя которых задается строкой.

genius 07.03.2003 20:54

возвращаюсь к сабжу
 
проблема решилась: все объекты рисовались в _level0, а не в новых мувиклипах. почему - не знаю.

Nox Noctis 07.03.2003 20:59

гениус, тебе же именно про это и написали :) два раза причем...

либо напиши как сказал TTS либо напиши так как сказал я.

иначе у тебя получается выражение вида: with (string) { ... }
так не покатит.
в скобках with () должна стоять ссылка.

genius 07.03.2003 23:27

понял, дурак. :)


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

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