Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Опознание объекта над которым фокус мыши (http://www.flasher.ru/forum/showthread.php?t=175108)

chuvak2008f 10.02.2012 00:14

Опознание объекта над которым фокус мыши
 
Как определить индекс или имя объекта над которым была нажата кнопка мыши?

Код AS3:

stage.addEventListener(MouseEvent.CLICK, runShot);
 
function runShot(event: MouseEvent):void {
// здесь как-то узнали индекс или имя объекта на который кликнули;
}


TanaTiX 10.02.2012 00:19

event.target

elder_Nosferatu 10.02.2012 00:19

Код AS3:

function runShot(event: MouseEvent):void {
        var objName:String = event.currentTarget.name;
}


GBee 10.02.2012 00:40

currentTarget == stage в данном случае

chuvak2008f 10.02.2012 21:37

Ништяк, и чё я раньше не додумался об этом, в первой игре - шашки, делал определение фигур по координатам, когда можно было event.target!! )) всем спасибо

Код AS3:

stage.addEventListener(MouseEvent.CLICK, runShot);
 
function runShot(event: MouseEvent):void {
        var objName:String = event.target.name; // Имя объекта
        var target:Sprite = Sprite(event.target); // Переводим объект в Sprite
        target.parent.removeChild(target); // Удалить объект
        trace(objName); // Показать имя объекта
}


HardCoder 10.02.2012 22:00

Цитата:

Сообщение от chuvak2008f (Сообщение 1062103)
Код AS3:

target.parent.removeChild(target);


Разве это ништяк? :confused:

elder_Nosferatu 10.02.2012 22:03

Цитата:

Сообщение от HardCoder (Сообщение 1062105)
Разве это ништяк? :confused:

Это как посмотреть... К примеру делаешь салют. Выпустил заряд, а он пускай сам летит, сверкает, тухнет и удаляется

chuvak2008f 10.02.2012 22:20

Цитата:

Сообщение от HardCoder (Сообщение 1062105)
Разве это ништяк? :confused:

В чём проблема? Больше ничего не заработало, кроме этого.

elder_Nosferatu 10.02.2012 22:41

Я так понял, что HardCoder имел ввиду, что экземпляр класса ничего не должен предпринимать в обход своего родителя. Это можно исправить, выкинув Евент о том, что объект свое отработал, аа родитель ловит сообщение и самостоятельно его удаляет

HardCoder 10.02.2012 22:46

Конечно, каждый вправе делать как ему хочется. Но, насколько я знаю, это неприлично командовать родителями. В одном примере, вроде бы ничего страшного: все под контролем. А в другом - более сложном проекте такая вещь может и погубить (то есть убить несколько часов на поиск проблемы). Поэтому лучше сразу привыкать к хорошему стилю программирования.

Добавлено через 1 минуту
elder_Nosferatu, да по поводу события - хороший вариант.


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

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