Работа с несколькими GUI во Flash / Actionscript 3 - PullRequest
0 голосов
/ 04 декабря 2009

Я пытаюсь найти лучший способ справиться с написанием нескольких окон GUI с использованием Flash-компонентов. Я подумал, что лучший способ справиться с этим - использовать слой для каждого окна, которое я хочу, и просто скрыть / показать слой, который я хочу для окна. Было бы предпочтительнее не использовать только ActionScript.

Поскольку каждый уровень содержит эти компоненты графического интерфейса, я помещаю код ActionScript, связанный с ними, в кадр 1 каждого уровня. Это сохраняет весь код GUI в одном месте и позволяет избежать объявления и обработки каждого компонента в классе основного этапа.

Хотя моя проблема - проблема с ограничениями. Класс основного этапа может получить доступ ко всем компонентам из своего класса, которые находятся на этих слоях, но сценарий действия «кадр 1» на уровне фрейма, по-видимому, этого не делает. Я хотел бы иметь возможность вызывать методы в классе основного этапа из кода ActionScript кадра 1 на слое. Кажется, это не сработало, и я даже пытался привести ссылку на сцену на ссылку моего класса. Не уверен, что это глупо, но просто пытаюсь найти способ.

Если у кого-то есть лучший способ справиться с этим, пожалуйста, дайте мне знать. Мой запасной план состоит в том, чтобы либо не перетаскивать компоненты на сцену, а вместо этого использовать только один сценарий actionscript, затем организовать эти компоненты в свои собственные классы, либо использовать прослушиватели событий на главной сцене для всех компонентов, что привело бы к увеличению класса сцены весь этот код GUI.

Спасибо!

1 Ответ

0 голосов
/ 04 декабря 2009

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

Пара альтернатив состоит в том, что:

  • Вы помещаете компоненты каждого окна в фрагмент ролика, таким образом вы можете сделать видимым или невидимым этот отдельный фрагмент ролика, по одному для каждого окна, которое вы хотите. Это более или менее то же самое, что вы хотите со слоями, но с использованием мувиклипа, содержащего каждое окно.
  • Вместо использования слоев используйте фреймы. Поместите все свои компоненты для первого окна в кадре 1, компоненты для следующего в кадре 2. Таким образом, вы можете контролировать, в каком окне вы находитесь, перемещая точку воспроизведения.

Об ошибках, которые у вас есть, вы можете дать более подробную информацию? Какие ошибки при флеш-печати?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...