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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.08.2009, 19:33
STILL.05 вне форума Посмотреть профиль Отправить личное сообщение для STILL.05 Найти все сообщения от STILL.05
  № 1  
Ответить с цитированием
STILL.05

Регистрация: Sep 2005
Сообщений: 194
По умолчанию Установить флаг в Menu

имеется menuitem с типом "check"
Код AS3:
private var menubarXML:XMLList =
   <>
      <menuitem label="Menu1" data="top">
            <menuitem label="MenuItem 1" data="1" type="check" toggled="false"/>
      </menuitem>
   </>;
если установить параметр toggled = true то меню по умолчанию является выделенным (рисуется галочка в меню)

вопроc: как программно изменить этот параметр?
__________________
нормально делай - нормально будет


Последний раз редактировалось STILL.05; 20.08.2009 в 21:07.
Старый 20.08.2009, 20:59
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 2  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Предполагаю, что таким образом...
Код AS3:
menubarXML..*.(@label == "MenuItem 1").@toggled = true;

Старый 20.08.2009, 21:04
STILL.05 вне форума Посмотреть профиль Отправить личное сообщение для STILL.05 Найти все сообщения от STILL.05
  № 3  
Ответить с цитированием
STILL.05

Регистрация: Sep 2005
Сообщений: 194
такой способ не прокатит
попробовал так
Код AS3:
var child:Object = {label:'MenuItem 1', type:'check', toggled='false'}
 
var source:Array = []
source.push({label:'Menu1', children:[child]})
menuBar.labelField = 'label';
menuBar.dataProvider = new ArrayCollection(source)
если менять свойство child.toggled то меню запоминает первое значение, а в последствии не меняет его
__________________
нормально делай - нормально будет

Старый 20.08.2009, 21:10
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 4  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
	<mx:Script>
		<![CDATA[
 
			[Bindable]
			private var menubarXML:XMLList =
			<>
				<menuitem label="Menu1" data="top">
					<menuitem label="MenuItem 1" data="1" type="check" toggled="false"/>
				</menuitem>
			</>;
 
			private function button_clickHandler(event:MouseEvent):void
			{
				menubarXML..*.(@label == "MenuItem 1").@toggled = true;
			}
		]]>
	</mx:Script>
 
	<mx:MenuBar id="menuBar" dataProvider="{menubarXML}" labelField="@label"/>
	<mx:Button id="button" y="200" click="button_clickHandler(event);" />
 
</mx:Application>

Старый 20.08.2009, 21:18
STILL.05 вне форума Посмотреть профиль Отправить личное сообщение для STILL.05 Найти все сообщения от STILL.05
  № 5  
Ответить с цитированием
STILL.05

Регистрация: Sep 2005
Сообщений: 194
хмм... интересно а как реализовать это для второго способа, когда dataProvider задается через ArrayCollection?
__________________
нормально делай - нормально будет

Старый 21.08.2009, 17:21
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 6  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Да также, наверное. Только доступ к toggled через другой синтаксис.

Старый 22.08.2009, 16:52
STILL.05 вне форума Посмотреть профиль Отправить личное сообщение для STILL.05 Найти все сообщения от STILL.05
  № 7  
Ответить с цитированием
STILL.05

Регистрация: Sep 2005
Сообщений: 194
нашел решение.
нужно создать [Bindable] переменную типа ArrayCollection, и её передавать в menuBar.dataProvider

Далее в ArrayCollection запихивать не просто Object={label:... toggled:...}
а создать свой класс, у которого set/get метод toggled будет так же [Bindable]

__________________
нормально делай - нормально будет

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

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

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


 


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


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