Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 10.03.2010, 01:58
ovechkin вне форума Посмотреть профиль Отправить личное сообщение для ovechkin Найти все сообщения от ovechkin
  № 1  
Ответить с цитированием
ovechkin

Регистрация: Mar 2010
Сообщений: 32
По умолчанию Архитектурный вопрос создания игры.

Добрый всем день.

Извините, если вопрос не совсем в тему.

Я новичок во Flex и AS. Но немного владею java, поэтому с синтаксисом Action Script разбираться не сложно.

Собираюсь написать небольшое приложение.
Что-то вроде четырёх разных страниц.

Если взять в аналогию html, то главная страница - ссылки на форум, новости, календарь, пользователи.
Нажимаем на форум, получаем список форумов, далее выбираем один из форумов, попадаем в список тем.
Ну и так далее.
Как это организовать во Flex (или AS 3.0 - значения не имеет)?

Есть идея:
1) добавляем компоненты на mx:Panel:
Код:
<mx:Panel title="MyTitle" height="100%" width="100%" 
			paddingTop="10" paddingLeft="10" paddingRight="10" paddingBottom="10">	
  <mx:VBox borderStyle="solid" paddingTop="10" paddingBottom="10" 
				paddingLeft="10" paddingRight="10">

<mx:Button id="button1" label="Форум" width="100" click="showForum()" />
				<mx:Button id="button2" label="Календарь" width="100" click="showCalendar()" />
				<mx:Button id="button3" label="Пользователи" width="100" click="showUsers()" />

  </mx:VBox>

		</mx:Panel>
2) При нажатии на кнопку button1 я бы хотел, чтобы компонента VBox не было, а вместо него отобразились кнопки с темами. Как это сделать?

Но, как мне кажется, тут будет много условий if. И это только с одним разделом. При появлении дополнительных, код будет очень сложным.

В общем, помогите с каким-нибудь примером.
Спасибо за внимание.

Старый 10.03.2010, 02:57
Кип вне форума Посмотреть профиль Отправить личное сообщение для Кип Найти все сообщения от Кип
  № 2  
Ответить с цитированием
Кип
 
Аватар для Кип

Регистрация: Oct 2009
Сообщений: 34
Отправить сообщение для Кип с помощью ICQ
Почитайте справку про состояния (states) во флексе. Думаю, это то, что вам нужно.

Старый 17.03.2010, 01:08
ovechkin вне форума Посмотреть профиль Отправить личное сообщение для ovechkin Найти все сообщения от ovechkin
  № 3  
Ответить с цитированием
ovechkin

Регистрация: Mar 2010
Сообщений: 32
Кип, спасибо за ответ. Это как раз то, что мне нужно.
Но теперь возник следующий вопрос.

Я бы хотел из дочерних "стэйтов" переходить на также дочерние.
Т.е. из форума перейти в календарь.
Соответственно, чтобы отобразить стэйт календаря, надо в стэйте календарь удалить существующие ненужные компоненты. В принципе, когда стэйтов мало, можно поставить условие:
Если стэйт форум, то удаляем компоненты форума.
Но что делать, если стэйтов у меня 100 ?

Как удалять дочерние ссылки?
Есть ли, например, тэг <mx:removeAllChildComponents> или что-то в этом роде?
При удалении несуществующих компонентов вылетает эксепшн (т.е. не "побывав" в стэйте форум, невозможно удалить его компоненты).
Так я хотел сделать: при инициализации очередного стэйта удалять все компоненты - не вышло.
Возможно есть какой-то шаблон?

Добавлено через 15 часов 5 минут
Видимо надо использовать transitions.
Не дочитал статьи.
Сегодня попробую.
Отпишусь.

Старый 17.03.2010, 20:52
Aloran вне форума Посмотреть профиль Отправить личное сообщение для Aloran Найти все сообщения от Aloran
  № 4  
Ответить с цитированием
Aloran

Регистрация: May 2009
Сообщений: 223
Записей в блоге: 1
Для форумов лучше наверное компоненты на основе DataGrid юзать.
<mx:removeAllChildComponents> )))) - делайте удаление по событию, а хендлер пишите на AS3 в теге
Код AS3:
<mx:Script>
	<![CDATA[
		// тут код AS3
	]]>
</mx:Script>

Старый 18.03.2010, 00:45
ovechkin вне форума Посмотреть профиль Отправить личное сообщение для ovechkin Найти все сообщения от ovechkin
  № 5  
Ответить с цитированием
ovechkin

Регистрация: Mar 2010
Сообщений: 32
спасибо, Aloran.
Вобщем, при переходе на новый стэйт, компоненты предыдущуего дочеренего удаляются, а основного (basedOn) остаются.
а правильно ли я понял, что <mx:Transitions> нужны только для привязывания графических эффектов при переходе в другой стэйт?

Создать новую тему Ответ Часовой пояс GMT +4, время: 17:07.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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