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

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

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

Регистрация: Mar 2010
Сообщений: 32
По умолчанию Как использовать mx.core.Application в классе AS?

Пишу утильный класс типа
Код AS3:
package utils
{
public class Utils
	{
		public function Utils()
		{
		}
	//import *.*;
        import mx.core.Application;	
		public static function disableApplication(app:Application, time:String):void {
			app.enabled = false;
			if(time!=null) {
				setTimeout(enableApplication, Number(time));
			}
		}
 
		public static function enableApplication(app:Application):void {
			app.enabled = true;
		}
	}
}
}
этот класс планируется использовать в другом классе, а не в mxml файле.
Конкретно - хочется вызывать функцию disableApplication с параметром Application.
Как передать этот параметр в функцию?

Старый 06.08.2010, 14:06
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Импорты принято писать вне определения класса. Ну и проверки типа time != null попахивают, а так вполне нормальный код.
Да, и используйте Timer вместо setTimeout.
__________________
Hell is the possibility of sanity

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

Регистрация: Mar 2010
Сообщений: 32
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Импорты принято писать вне определения класса. Ну и проверки типа time != null попахивают, а так вполне нормальный код.
Да, и используйте Timer вместо setTimeout.
А вы вопрос мой прочитали?

Старый 06.08.2010, 15:17
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Да, а что именно не получилось? Например, этот код в вашем наследнике Application:
Код AS3:
Utils.disableApplication(this)
__________________
Hell is the possibility of sanity

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

Регистрация: Mar 2010
Сообщений: 32
wvxvw, я этот метод хочу использовать в другом классе, а не в mxml файле.
в этом то и проблема.
Надо как-то вычленить из mxml файла объект Application и передать его в функцию.

Код AS3:
import utils.Utils;
public class Foo {
     public function doSomething() {
           Utils.disableApplication( вот здесь должен быть объект класса Application, null);
     }
}
Кстати, за замечания спасибо!


Последний раз редактировалось ovechkin; 06.08.2010 в 15:40.
Старый 06.08.2010, 15:51
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 6  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
MXML файлы - это классы... так что вашу логику я как-то не улавливаю... пожалуйста.
__________________
Hell is the possibility of sanity

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

Регистрация: Mar 2010
Сообщений: 32

Ну короче как в класс Utils передать объект Application ?

Добавлено через 4 минуты
я не знаю как ещё объяснить....
например так:

Код AS3:
public class SomeClass {
 
public function disableApp():void {
     Application.application.enabled = false;
}
Как добиться того, чтобы из другого класса использоваться объект Application?

Добавлено через 7 минут
Прошу прощения!!!
я только что написал именно так в классе SomeClass:
Код AS3:
public function disableApp():void {
   Application.application.enabled = false;
}
Не думал, что класс Application глобальный и виден ото всюду.

Ещё раз извините.


Последний раз редактировалось wvxvw; 06.08.2010 в 17:52.
Старый 06.08.2010, 16:17
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 8  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Передать сначала Application этому классу из самого Application.

Старый 06.08.2010, 17:51
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 9  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
ovechkin: код нужно оформлять тегами [as3][/as3]. Application не глобальный класс. "Глобальным" класс становится когда он доступен из безымянного пакета. Использование Application.application - это костыль, и так делать не нужно никогда.
__________________
Hell is the possibility of sanity

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

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

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


 


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


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