Руководство по actionscript. часть 3, стр. 014

Для разрешения этой ситуации в прикладной среде Flex определяется пространство имен mx internal, используемое для уточнения методов и переменных, которые не должны быть видны за пределами прикладной среды, но при этом должны быть доступны в различных пакетах внутри ее.

Вот объявление пространства имен mx internal:

package mx. core { public namespace mx_internal =

«http://www. adobe. com/2006/f1ex/mx/i nternal»;

}

Рассмотрим конкретный пример использования пространства имен mx internal из прикладной среды Flex.

Для работы с табличными данными наподобие тех, которые используются в программах электронных таблиц, прикладная среда Flex предоставляет компонент DataGr id. Класс DataGrid находится в пакете mx. controls. Вспомогательные классы для компонента Dat aGr id размещаются в отдельном пакете:mx. controls. gridclasses. Чтобы взаимодействие между классом DataGrid и его вспомогательными классами осуществлялось максимально эффективно, DataGrid обращается к некоторым внутренним переменным его вспомогательных классов напрямую, а не с помощью доступных всем методов-получателей. Однако эти внутренние переменные не должны использоваться классами за пределами прикладной среды Flex, поэтому они уточняются пространством имен mx internal. Например, вспомогательный класс mx. controls. gridclasses. DataGridColumn хранит индекс столбца в переменной mx_internal: : colNum.

// Файл DataGridColumn. as mx_internal var colNum:Number;

Чтобы получить индекс столбца, класс DataGrid сначала открывает пространство имен mx_internal:

use namespace mx_internal;

а затем обращается к переменной mx internal: : colNum напрямую, как показано в следующем фрагменте кода, взятого из определения метода-писателя:

// Файл DataGrid. as

public function set columns(value:Array):void { // Инициализируем «colNum» для всех столбцов var n:int = value. length; for (var i:int = 0; i < n; i++) {

var column:DataGridColumn = _columns[i];

column. owner = this;

// Обращаемся к переменной mx_internal::colNum напрямую. (Напомним, что

// пространство имен mx_internal открыто, поэтому выражение

// column. colNum эквивалентно выражению column. mx_internal: .colNum.)

column. colNum = i;

}

// Оставшаяся часть метода не приводится

}

Классы за пределами прикладной среды Flex для получения индекса столбца используют общедоступный метод getColumnlndex ( ) вместо обращения к переменной mx_internal: : colNum напрямую.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 17.03.2011">Руководство по actionscript. часть 3, стр. 001
  • 25.03.2010">Великолепная инфографика на 5+
  • 16.03.2011">Руководство по actionscript. часть 3, стр. 019
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.66
  • 18.03.2011">Руководство по actionscript. часть 2, стр. 123
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.51
  • 18.03.2011">Руководство по actionscript. часть 2, стр. 127
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.86
  • 01.03.2011">Руководство по actionscript. часть 5, стр. 115
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.50
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.140
  • 24.02.2011">Руководство по actionscript. часть 7, стр. 012
  • 10.03.2011">Руководство по actionscript. часть 4, стр. 028
  • 16.06.2010">Самоучитель по креативному веб-дизайну. Книга 4, стр.30
  • 24.02.2011">Руководство по actionscript. часть 6, стр. 113
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...