Показать сообщение отдельно
Старый 04.02.2012, 14:00
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 1  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
По умолчанию Ошибка при MouseEvent.DOUBLE_CLICK

Совершенно странная ситуация и ошибка никак не трейсится.

Программно создается объект MyTextArea - флексовкий TextArea. Вешаем слушатель:
Код AS3:
var ta:MyTextArea = new MyTextArea();
designArea.addElement(ta);
ta.addEventListener(MouseEvent.DOUBLE_CLICK, dButtonClick);
 
protected function dButtonClick(event:MouseEvent):void
			{
				var ta:MyTextArea = tool.target as MyTextArea;
				ta.updateStyle();
				var obj:Object = new Object();
				obj.uid = ta.name;
				obj.fontSize = ta.fontSize;
				obj.color = ta.colorString;
				obj.colorInt = ta.color;
				obj.fontFamily = ta.fontFamily;
				obj.oldaff = ta.text;
				navigator.pushView(views.FontView, obj);
			}
Tool - это контрол для TextArea. Можно и без него, с помощью event.taget, все равно ошибка.
При первом двойном клике все нормально обрабатывается и views.FontView открывается. Но если кликнуть опять - TypeError: Error #1009: Cannot access a property or method of a null object reference. в строке navigator.pushView(views.FontView, obj);

Ну ладно, пробую создать просто отдельную кнопку по клику вызывающую dButtonClick и теперь все нормально работает сколько угодно раз. Кликаю дважды по MyTextArea - опять ошибка со второго раза.