2013-06-27 2 views
0

(Примечание: Только для уточнения, на «де-выберите» Я имею в виду выбрать другую форму, чем выбранные один, тот самый ДЭ-выбор первоначально выбранную формы)EaselJS: изменение формы цвета на Де-выбери

Just для разработки немного больше, я получил ряд фигур на холсте. Любая фигура, на которую я нажимаю, меняет свой цвет, например, с красного на белый. Но тогда в любой момент времени может быть только ОДНАЯ форма белого цвета. Это означает, что если я нажму на фигуру -В сначала, то форма-B, цвет формы-A должен измениться с белого на красный до момента, когда я нажму на фигуре-B.

Добавление прослушивателя событий «щелчок» для каждой формы было без проблем. Но я не понимаю, как указать на предыдущий объект формы, чтобы восстановить исходный цвет.

Любая помощь будет очень признательна!


Update: После дальнейших исследований, я начинаю думать, что моя цель сводится к этому - найти способ, чтобы указать на какой-либо объект Shape не через какой-либо события слушателя, но с помощью вызова метода путем передачи объекта Я БЫ. Тем не менее, я просто проверил методы класса Shape here, но не увидел ничего полезного. Могу ли я здесь что-то упустить?

ответ

0

(Я надеюсь, что правильно вас понял) Ваша проблема связана с проблемой потока программ, которая не имеет особого отношения к easeljs или любому объекту ObjectType.

Все, что вам нужно сделать, это установить (глобальную) ссылку на объект с щелчком внутри клик-прослушивателя, я бы назвал его window.lastClickedShape или что-то подобное. И всякий раз, когда нажимается фигура, вы проверяете, lastClickedShape != null и сбросьте цвет для этого объекта.

+0

olsn - Вы определенно правы, и ваш ответ помог мне понять, что я пренебрегаю чем-то таким очевидным. Благодаря! – BinaryCat