<s:DataRenderer>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:DataRenderer Properties data="" Events dataChange="No default" />]]>
Примечание. Этот класс может быть удален в последующих версиях.
Это свойство – Bindable, оно отправляет события dataChange
<s:TextArea>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:TextArea Properties heightInLines="Calculated default" [Spark theme only] textFlow="TextFlow" [Spark theme only] typicalText=null [Spark theme only] widthInChars="Calculated default" [Spark theme only] Styles horizontalScrollPolicy="auto" [Spark theme only] symbolColor="" verticalScrollPolicy="auto" [Spark theme only] />]]>
Тема оформления для темы Spark использует класс RichEditableText. Это значит, что элемент управления Spark TextArea поддерживает библиотеку Text Layout Framework (TLF), созданную на основе Flash Text Engine (FTE). Сочетание этих слоев обеспечивает высококачественную международную типографику и макет редактируемого текста. Тема оформления содержит средство прокрутки, отображающее горизонтальные и вертикальные полосы прокрутки для прокручивания текста, а также поддерживает вертикальную прокрутку с помощью колесика мыши. К RichEditableText можно получить доступ с помощью
В теме оформления для мобильной темы используется класс StyleableStageText. Так как в StyleableStageText используются собственные текстовые поля, это позволяет более эффективно управлять вводом и обработкой текста на мобильных устройствах, однако следует учесть существующие
Установить текст для отображения или получить текст, введенный пользователем, можно посредством свойства
Текст отформатирован с использованием стилей CSS, например
В теме Spark можно указать значения ширины и высоты TextArea с помощью свойств
Для ограничения числа вводимых пользователем символов можно использовать свойство
В мобильной теме свойства экранной клавиатуры, такие как
TextArea для темы Spark
Наиболее важными отличиями элементов управления Spark TextArea от MX TextArea являются следующие:
Элемент управления Spark TextArea использует объектно-ориентрованную модель RTF-текста TLF, в которой элементы макета, такие как разделы, абзацы, интервалы, гиперссылки и иллюстрации, представлены в среде выполнения объектами ActionScript. Доступ к этим объектам и манипуляции ими возможны с помощью программных средств. Главным объектом в TLF, представляющим текст в формате RTF, является TextFlow. Определите текст RTF для элемента управления TextArea, установив его свойство
Если отображать текст в нескольких форматах не требуется, назначьте для свойства TextArea
Во время компиляции можно поместить теги разметки TLF в тег TextArea, как показано в следующем примере:
<s:TextArea>Hello <s:span fontWeight="bold">World!</s:span></s:TextArea>В этом примере компилятор MXML устанавливает свойство TextArea
Элемент управления TextArea не содержит пользовательский интерфейс для форматирования текста вручную, однако имеет API, которые могут использоваться для программного форматирования. Например, можно создать кнопку, при нажатии которой выбранный текст отображается полужирным шрифтом.
Форматирование текста по умолчанию определено стилями CSS, например
С помощью стилей можно управлять различными характеристиками содержимого TextArea. Вот несколько наиболее часто используемых:
По умолчанию текст обтекает элемент управления по правому краю. Вертикальная полоса прокрутки появляется автоматически, когда текста больше, чем помещается в TextArea. Если значение стиля
В области Spark TextArea может отображаться текст, написанный слева направо (LTR) (например, по-французски), справа налево (RTL) (например, по-арабски), а также в двух направлениях одновременно (например, предложения на французском языке в тексте на арабском). Если основным является направление текста справа налево, установите для стиля
Область Spark TextArea также поддерживает неограниченное число операций отмены/повтора в рамках одного сеанса. Началом сеанса редактирования считается получение элементом управления фокуса клавиатуры, а окончанием – его потеря.
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
В теме Spark элемент управления TextArea имеет следующие характеристики по умолчанию:
В мобильной теме элемент управления TextArea имеет следующие характеристики по умолчанию:
Свойство
<s:TextArea>Hello <s:span fontWeight="bold">World</s:span></s:TextArea>В этом примере String и SpanElement, определяемые в качестве содержимого, используются при создании TextFlow.
Это свойство отмечено как Object, поскольку оно может быть установлено как String, FlowElement или как массив String и FlowElement. В вышеприведенном примере содержимое является двухэлементным массивом. Первым элементом массива является строка Hello. Вторым элементом массива является объект SpanElement, содержащий текст World в полужирном начертании.
Независимо от определения содержимого оно преобразуется в объект TextFlow. При получении значения этого свойства вы получаете результирующий объект TextFlow.
Эта функция не поддерживается в мобильной теме.
Для получения информации о теме Spark см. spark.components.RichEditableText.heightInLines.
Эта функция не поддерживается в мобильной теме.
Для получения информации о теме Spark см. spark.components.RichEditableText.textFlow.
Эта функция не поддерживается в мобильной теме.
Для получения информации о теме Spark см. spark.components.RichEditableText.widthInChars.
Эта функция не поддерживается в мобильной теме.
<s:Grid>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Grid Properties />]]>
Компонент сетки предназначен для использования в качестве компонента темы оформления DataGrid или как элемент других составных пользовательских компонентов. При этом он не поддерживает темы оформления, не включает средство или полосы прокрутки и не обеспечивает стандартную обработку событий мыши или клавиатуры.
Каждая видимая ячейка сетки отображается с помощью экземпляра GridItemRenderer, созданного посредством свойства
Элемент управления Grid поддерживает выбор в соответствии со свойством
Элемент управления Grid отображает индикаторы наведения, символа вставки и выбора на основе свойства
Элемент управления Grid поддерживает плавную прокрутку. Их вертикальные и горизонтальные позиции прокрутки определяют начало координат пикселов видимой части сетки и макет сетки только отображает только те средства визуализации элементов ячейки, которые необходимы для заполнения доступного пространства.
Элемент управления Grid поддерживает строки с различной высотой, которая автоматически вычисляется на основе содержимого средств визуализации элементов. Эта поддержка называется виртуализацией сетки, поскольку сопоставление (в пикселах) позиций прокрутки и индексов строк и столбцов обычно основано на неполной информации о предпочтительных размерах ячеек сетки. Сетка принимает вычисленную высоту строк, которые прокручены в область видимости, и рассчитывает остальные данные на основе одного
Переходы в средствах визуализации элементов DataGrid не поддерживаются. В классе GridItemRenderer выключено свойство
Функция в примере ниже использует этот метод для вычисления значения
function getCellData(x:Number, y:Number):Object { var cell:CellPosition = getCellAt(x, y); if (!cell) return null; var GridColumn:column = grid.columns.getItemAt(cell.columnIndex); return grid.dataProvider.getItemAt(cell.rowIndex)[column.dataField]; }
Если все столбцы для указанной строки и все предшествующие ей строки еще не прокручены в область видимости, возвращаемые границы представлены лишь приблизительно на основе
Если все столбцы для указанной строки и всех предшествующих ей строк еще не прокручены в область видимости, возвращаемое значение представлено лишь приблизительно на основе
Если все столбцы для указанной строки и всех предшествующих ей строк еще не прокручены в область видимости, возвращаемое значение представлено лишь приблизительно на основе
Если все ячейки для указанного столбца еще не прокручены в область видимости, возвращаемые границы представлены лишь приблизительно на основе
Если все столбцы или строки для сетки еще не прокручены в область видимости, возвращаемая позиция индекса представлена лишь приблизительно на основе
Если свойство ширины указанного столбца не определено, то возвращенное значение может быть только приблизительным. Фактическая ширина столбца вычисляется только после прокрутки столбца в область отображения.
Если запрошенное средство визуализации элементов не является видимым, то при каждом вызове этого метода создается новое средство визуализации элементов. Новое средство визуализации элементов невидимо
Если ширина указанного столбца не определена явно, то ширина этой ячейки будет основана на
Если для свойства
Если все столбцы для указанной строки и все предшествующие ей строки еще не прокручены в область видимости, возвращаемые границы представлены лишь приблизительно на основе
Если все столбцы или строки для сетки еще не прокручены в область видимости, возвращаемая позиция индекса представлена лишь приблизительно на основе
Функция в примере ниже использует этот метод для вычисления вектора видимых объектов GridColumn.
function getVisibleColumns():Vector.<GridColumn> { var visibleColumns = new Vector.<GridColumn>; for each (var columnIndex:int in grid.getVisibleColumnIndices()) visibleColumns.push(grid.columns.getItemAt(columnIndex)); return visibleColumns; }
Если columnIndex равен -1, то вся строка становится недействительной. Также если
Этот метод должен вызываться при изменении любого аспекта элемента поставщика данных в
Этот метод вызывается автоматически при непосредственном изменении
При добавлении элементов в
Этот неявный режим selectAll завершается при возникновении одного из следующих условий:
Этот метод не будет иметь эффект, если область ячейки не полностью помещается в пределах сетки.
Каждый индекс представляет элемент в поставщике данных для включения в выбор.
Значение
Значение
Обработчики событий сетки должны использовать это свойство для регистрации положения недавнего события мыши (перемещение вниз) или клавиатуры без нажатия клавиши Shift, которое определяет одну границу следующего возможного выбора с нажатой клавишей Shift. Индекс символа вставки определяет другую конечную точку.
Обработчики событий сетки должны использовать это свойство для регистрации положения недавнего события мыши (перемещение вниз) или клавиатуры без нажатия клавиши Shift, которое определяет одну границу следующего возможного выбора с нажатой клавишей Shift. Индекс символа вставки определяет другую конечную точку.
Если для
Установка для
Установка для
Объекты GridColumn могут отображаться только в
Установка для
Установка для
Если реальный размер сетки был установлен явно, то это свойство не используется.
Свойство не будет иметь эффект при выполнении любого из нижеуказанных условий:
Свойство не будет иметь эффект при выполнении любого из нижеуказанных условий:
Свойство не будет иметь эффект при выполнении любого из нижеуказанных условий:
Если
Если реальный размер сетки был установлен явно, то это свойство не используется.
Если для
Если для
Когда пользователь изменяет выбор, взаимодействуя с элементом управления, этот элемент управления отправляет событие
Свойство предназначено для инициализации или привязки выбора в разметке MXML. Метод
Когда пользователь изменяет выбор, взаимодействуя с элементом управления, этот элемент управления отправляет событие
Свойство предназначено для инициализации или привязки выбора в разметке MXML. Метод
Значение по умолчанию — пустой
Когда пользователь изменяет выбор, взаимодействуя с элементом управления, этот элемент управления отправляет событие
Свойство предназначено для инициализации или привязки выбора в разметке MXML. Метод
Когда пользователь изменяет выбор, взаимодействуя с элементом управления, этот элемент управления отправляет событие
Свойство предназначено для инициализации или привязки выбора в разметке MXML. Метод setSelectedCell() должен использоваться для программного обновления выбранных фрагментов, например при создании обработчика событий мыши или клавиатуры.
>Значение по умолчанию — пустой
Когда пользователь изменяет выбор, взаимодействуя с элементом управления, этот элемент управления отправляет событие
Свойство предназначено для инициализации или привязки выбора в разметке MXML. Метод
Когда пользователь изменяет выбор, взаимодействуя с элементом управления, этот элемент управления отправляет событие
Свойство предназначено для инициализации или привязки выбора в разметке MXML. Метод setSelectedCell() должен использоваться для программного обновления выбранных фрагментов, например при создании обработчика событий мыши или клавиатуры.
Значение по умолчанию — пустой
При изменении selectionMode текущий выбор будет отменен и для caretRowIndex и caretColumnIndex будет установлено значение -1.
Ограничение. Если
Если
<s:Application>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Application Properties applicationDPI=Device dependent" backgroundColor="0xFFFFFF" colorCorrection="default" controlBarContent="null" controlBarLayout="HorizontalLayout" controlBarVisible="true" frameRate="24" pageTitle"" preloader="No default" preloaderChromeColor="No default" resizeForSoftKeyboard=true" runtimeDPIProvider="RuntimeDPIProvider" scriptRecursionLimit="1000" scriptTimeLimit="60" splashScreenImage="" splashScreenMinimumDisplayTime="1000" splashScreenScaleMode="none" usePreloader="true" viewSourceURL="" xmlns:No default="No default" Events applicationComplete="No default" error="No default" />]]>
Контейнер Application имеет следующие характеристики по умолчанию:
Примечание. Это свойство не может быть определено кодом ActionScript; оно должно быть задано с помощью кода MXML.
Примечание. Это свойство не может быть определено кодом ActionScript; оно должно быть задано с помощью кода MXML. Значение, заданное кодом MXML, предназначено для использования средством с целью обновления шаблонов HTML с SDK.
Примечание. Это свойство не может быть определено кодом ActionScript; оно должно быть задано с помощью кода MXML.
Это свойство используется для указания пути компонента, который определяет пользовательский индикатор выполнения. Для создания пользовательского индикатора выполнения необходимо создать подкласс класса SparkDownloadProgressBar, DownloadProgressBar или flash.display.Sprite, который реализует интерфейс mx.preloaders.IPreloaderDisplay.
Примечание. Это свойство не может быть определено кодом ActionScript; оно должно быть задано с помощью кода MXML.
Примечание. Это свойство не может быть определено кодом ActionScript; оно должно быть задано с помощью кода MXML.
Примечание. Это свойство действует, только если установлено свойство
Примечание. Для поддержки экрана заставки в настольном приложении необходимо добавить frameworks\libs\mobile\mobilecomponents.swc в путь к библиотеке приложения.
Для части рабочей области, не закрытой изображением, используется
Примечание. Это свойство действует, только если установлено свойство
Примечание. Для поддержки экрана заставки в настольном приложении необходимо добавить frameworks\libs\mobile\mobilecomponents.swc в путь к библиотеке приложения.
Примечание. Это свойство не может быть определено кодом ActionScript; оно должно быть задано с помощью кода MXML.
Только главное приложение имеет право устанавливать свойство
Примечание. Контейнер Application не отслеживает свойство
Можно использовать цикл for-in для извлечения всех имен и значений из Object параметров.
Существует два источника параметров: строка запроса в URL-адресе Application и значения HTML-параметра FlashVars (оно затрагивает только главное Application).
Чтобы включить функцию изменения размера приложения, укажите для атрибута
Стандартные сопоставления Flex:
splashScreenImage="@Embed('Default.png')"
Примечание. Это свойство действует, только если для свойства
Примечание. Для поддержки экрана заставки в настольном приложении необходимо добавить frameworks\libs\mobile\mobilecomponents.swc в путь к библиотеке приложения.
Свойство
<Application viewSourceURL="http://path/to/source"> ... </Application>
<s:Button>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Button Properties emphasized="false" />]]>
Как правило, кнопки используют прослушиватели событий для выполнения действий при выборе пользователем соответствующего элемента управления. При щелчке мышью элемент управления Button активируется и передает события
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Элемент управления Button имеет следующие характеристики по умолчанию:
<s:CheckBox>
tag inherits all of the tag
attributes of its superclass and adds the following attributes:
<s:CheckBox Properties symbolColor="0x000000" />]]>
При щелчке пользователя на компоненте CheckBox или его связанном тексте компонент CheckBox устанавливает для своего свойства
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Элемент управления CheckBox имеет следующие характеристики по умолчанию:
<s:Group>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Group Properties blendMode="auto" mxmlContent="null" scaleGridBottom="null" scaleGridLeft="null" scaleGridRight="null" scaleGridTop="null" Events elementAdd="No default" elementRemove="No default" />]]>
Для повышения производительности и минимизации размера приложения контейнер Group не может иметь тем оформления. При необходимости использования тем оформления следует использовать вместо него SkinnableContainer.
Примечание. Сетка масштабирования может функционировать некорректно, когда внутри группы существуют нижестоящие DisplayObject, такие как компонент или другая группа. Если нижестоящие элементы представлены объектами GraphicElement и все они разделяют DisplayObject группы, то сетка масштабирования работает должным образом.
Установка любого из следующих свойств для нижестоящего GraphicElement будет требовать от GraphicElement создания его собственного DisplayObject, что приведет к инвертированию свойств сетки масштабирования на группе.
alpha blendMode other than BlendMode.NORMAL or "auto" colorTransform filters mask matrix rotation scaling 3D properties bounds outside the extent of the Group
Контейнер Group имеет следующие характеристики по умолчанию:
Значение «auto» (по умолчанию) специфично для использования группой blendMode и означает, что основной blendMode должен быть
Элементы содержимого должны быть только объектами IVisualElement. Массив
Если содержимое является массивом, то не следует изменять массив непосредственно. Вместо этого используйте методы, определенные классом Group.
<s:TextInput>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:TextInput Properties widthInChars="Calculated default" [applies to Spark theme] Events enter="No default" />]]>
Тема оформления TextInput для темы Spark использует класс RichEditableText. Это значит, что элемент управления Spark TextInput поддерживает библиотеку Text Layout Framework (TLF), созданную на основе Flash Text Engine (FTE). Сочетание этих слоев обеспечивает высококачественную международную типографику и макет редактируемого текста.
Тема оформления TextInput для мобильной темы использует класс StyleableStageText вместо RichEditableText. Так как в StyleableStageText используются собственные текстовые поля, это позволяет более эффективно управлять вводом и обработкой текста на мобильных устройствах, однако следует учесть существующие
Установить текст для отображения или получить текст, введенный пользователем, можно посредством свойства
Текст отформатирован с использованием стилей CSS, например
В теме Spark можно указать ширину элемента управления с помощью свойства
Для ограничения числа вводимых пользователем символов можно использовать свойство
В мобильной теме свойства экранной клавиатуры, такие как
Этот элемент управления при нажатии пользователем клавиши ENTER, вместо вставки конца строки, отправляет сообщение
Это элемент управления с изменяемым оформлением, стандартная тема оформления которого содержит экземпляр RichEditableText для темы Spark или экземпляр StyleableStageText для мобильной темы. Этот элемент используется для обработки и редактирования текста. (Тема оформления также обрабатывает рисование границ и фон.) Экземпляр RichEditableText или StyleableStageText доступен в качестве объекта
Поскольку в теме Spark RichEditableText использует TLF, то элемент управления Spark TextInput поддерживает текст для чтения слева направо (LTR) (например, на французском языке), справа налево (RTL) (например, на арабском языке), а также в двух направлениях одновременно (например, предложения на французском языке в арабском тексте). Если основным является направление текста справа налево, установите для стиля
Как результат использования TLF Spark TextInput поддерживает неограниченное число операций отмены/повтора в рамках одного сеанса. Началом сеанса редактирования считается получение элементом управления фокуса клавиатуры, а окончанием – его потеря.
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
В теме Spark элемент управления TextInput имеет следующие характеристики по умолчанию:
В мобильной теме элемент управления TextInput имеет следующие характеристики по умолчанию:
em – это типографская единица измерения, равная размеру одного пункта. Она не обязательно равна ширине символа M, однако во многих шрифтах символ M равен ширине одного em. Стиль элемента управления
Например, если вы хотите изменить ширину TextInput таким образом, чтобы ввести 20 текстовых символов, установите это свойство на значение 20.
Это свойство игнорируется, если устанавливаются явные значения ширины, процентные значения ширины или ограничения
Это свойство также будет проигнорировано, если указано свойство
Эта функция не поддерживается в мобильной теме.
<s:Form>
tag inherits all the tag
attributes of its superclass and adds no new tag attributes:
<s:Form> ... child tags ... </s:Form>]]>
В таблице представлены компоненты, используемые для создания форм в Flex:
При удалении нижестоящего элемента из формы обновление словаря не выполняется.
<s:NumericStepper>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:NumericStepper Properties imeMode="null" maxChars="0" maximum="10" valueFormatFunction="" valueParseFunction="" Styles alignmentBaseline="USE_DOMINANT_BASELINE" baselineShift="0.0" blockProgression="TB" borderAlpha="0.5" borderColor="0x000000" borderVisible="true" breakOpportunity="AUTO" cffHinting="HORIZONTAL_STEM" color="0" contentBackgroundAlpha="1.0" contentBackgroundColor="0xFFFFFF" clearFloats="none" digitCase="DEFAULT" digitWidth="DEFAULT" direction="LTR" dominantBaseline="AUTO" firstBaselineOffset="AUTO" focusedTextSelectionColor="" fontFamily="Arial" fontLookup="DEVICE" fontSize="12" fontStyle="NORMAL" fontWeight="NORMAL" inactiveTextSelection="" justificationRule="AUTO" justificationStyle="AUTO" kerning="AUTO" leadingModel="AUTO" ligatureLevel="COMMON" lineHeight="120%" lineThrough="false" listAutoPadding="40" listStylePosition="outside" listStyleType="disc" locale="en" paragraphEndIndent="0" paragraphSpaceAfter="0" paragraphSpaceBefore="0" paragraphStartIndent="0" renderingMode="CFF" tabStops="null" textAlign="START" textAlignLast="START" textAlpha="1" textDecoration="NONE" textIndent="0" textJustify="INTER_WORD" textRotation="AUTO" trackingLeft="0" trackingRight="0" typographicCase="DEFAULT" unfocusedTextSelectionColor="" whiteSpaceCollapse="COLLAPSE" wordSpacing="100%,50%,150%" />]]>
Элемент управления NumericStepper состоит из однострочного текстового поля ввода и пары кнопок со стрелками для последовательного перехода между возможными значениями. Для циклического перехода между значениями также используются клавиши со стрелками вверх и вниз, и колесико мыши. Вводимое значение подтверждается при нажатии пользователем клавиши Enter, снятии фокуса с компонента или при переходе к NumericStepper с помощью кнопки со стрелкой или вызова метода
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Для элемента управления NumericStepper по умолчанию установлены следующие характеристики:
spark.skins.spark.NumericStepperTextInputSkin
Класс flash.system.IMEConversionMode определяет константы для допустимых значений этого свойства. Можно также указать значение
Функция имеет следующую подпись:
funcName(value:Number):String
Функция имеет следующую подпись:
funcName(value:String):Number
<s:Spinner>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Spinner Properties allowValueWrap="false" Events change="No default" Styles cornerRadius="2" focusAlpha="0.5" focusColor="0x70B2EE" symbolColor="0x000000" />]]>
Spinner состоит из двух требуемых кнопок, одна для увеличения текущего значения, а другая для уменьшения текущего значения. Пользователи могут также использовать клавиши со стрелкой вверх или вниз или колесико мыши для циклического перемещения по значениям. Вводимое значение подтверждается при нажатии пользователем клавиши Enter, снятии фокуса с компонента или при переходе к Spinner с помощью клавиши со стрелкой или вызова метода
Масштаб компонента Spinner является набором допустимых значений для свойства
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Элемент управления Spinner по умолчанию имеет характеристики, перечисленные ниже.
Компонент может изменять свои размеры (
Альтернативой использованию этого компонента является изменение масштаба, не требующее изменения нижестоящих элементов. Эта опция поддерживается
Компонент всегда самостоятельно изменяет размеры и после этого размещает свои нижестоящие элементы в натуральной величине, заданной схемой или пользователем.
Компонент всегда самостоятельно определяет размеры и после этого размещает свои нижестоящие элементы в рассчитанном размере. Масштаб регулируется и может принимать определяемый форматом или пользователем размер.
<s:NavigatorContent>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:NavigatorContent Properties icon="null" label="" />]]>
Не используйте контейнер NavigatorContent за пределами контейнера навигатора MX.
Стратегия создания контейнера NavigatorContent основана на стратегии создания вышестоящего контейнера навигатора:
Контейнер NavigatorContent не поддерживает поставленную в очередь стратегию создания.
Контейнер NavigatorContent имеет следующие характеристики по умолчанию:
Например, если этот Container является нижестоящим элементом TabNavigator, этот значок отобразится на соответствующей вкладке. Если этот Container является нижестоящим элементом Accordion, этот значок отобразится в соответствующей области заголовка.
Для встраивания значка в SWF-файл используйте директиву компилятора MXML @Embed():
icon="@Embed('filepath')"
Изображение может быть файлом JPEG, GIF, PNG, SVG или SWF.
Например, если этот Container является нижестоящим элементом TabNavigator, строка отображается на соответствующей вкладке. Если этот контейнер является нижестоящим элементом Accordion, эта строка появляется в соответствующей области заголовка.
<s:VSlider>
tag inherits all of the tag
attributes of its superclass and adds no tag attributes:
<s:VSlider/>]]>
Ползунок может включать непрерывный диапазон значений перемещения между его минимальным и максимальным значениями, или же его перемещение может быть ограничено определенными интервалами между минимальным и максимальным значениями. Для отображения текущего значения ползунка можно также использовать всплывающую подсказку.
Элемент управления VSlider по умолчанию имеет следующие характеристики:
spark.skins.spark.VSliderThumbSkin
spark.skins.spark.VSliderTrackSkin
<s:ToggleButton>
tag inherits all of the tag
attributes of its superclass and adds no tag attributes:
<s:ToggleButton/>]]>
Это состояние можно получить или установить программным способом с помощью свойства
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Элемент управления ToggleButton имеет следующие характеристики по умолчанию:
<s:FormHeading>
tag inherits all the tag
attributes of its superclass and adds no new tag attributes:
<s:FormHeading Properties label="" Common Styles alignmentBaseline="baseline" baselineShift="0" cffHinting="0.0" color="0x000000" digitCase="default" digitWidth="default" direction="ltr" dominantBaseline="auto" fontFamily="Arial" fontLookup="embeddedCFF" fontSize="12" fontStyle="normal" fontWeight="normal" justificationRule="auto" justificationStyle="auto" kerning="false" ligatureLevel="common" lineBreak="toFit" lineHeight="120%" lineThrough="false%" locale="en" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" renderingMode="cff" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="start" textJustify="interWord" trackingLeft="0" trackingRight="00" typographicCase="default" verticalAlign="top" Mobile Styles leading="2" letterSpacing="0" />]]>
<s:HScrollBar>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:HScrollBar Properties viewport="" />]]>
Несмотря на то что можно использовать элемент управления HScrollBar в качестве автономного элемента управления, обычно он присоединяется как часть другой группы компонентов для предоставления функциональных возможностей прокрутки.
Элемент управления HScrollBar имеет следующие характеристики по умолчанию:
spark.skins.spark.HScrollBarThumbSkin
spark.skins.spark.HScrollBarTrackSkin
Поведением по умолчанию является горизонтальная прокрутка в соответствии с количеством "шагов" в событии
Вызов метода
Если установлено свойство
Если
<s:SkinnablePopUpContainer>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:SkinnablePopUpContainer Events close="No default" open="No default" />]]>
Контейнер SkinnablePopUpContainer не создается как компонент обычного макета своего вышестоящего контейнера. Вместо этого он отображается как всплывающее окно поверх своего вышестоящего узла. Поэтому этот контейнер не создается непосредственно в коде MXML приложения,
а создается как MXML-компонент, часто в отдельном файле MXML. Чтобы отобразить компонент, создайте экземпляр MXML-компонента и вызовите метод
Чтобы закрыть компонент, вызовите метод
Исходным состоянием темы оформления SkinnablePopUpContainer является
Контейнер SkinnablePopUpContainer имеет следующие характеристики по умолчанию:
Это событие отправляется при переключении контейнера из состояния
Это событие обеспечивает механизм передачи сохраняемой информации из контейнера в прослушиватель событий. Типичным использованием является создание диалогового окна с множественным выбором и кнопкой отмены. После выбора действительной функции всплывающее окно следует закрыть с помощью метода
Это событие отправляется при переключении контейнера из состояния
Метод
<s:DropDownList>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:DropDownList Properties prompt="" typicalItem="null" Events closed="No default" open="No default" />]]>
Элемент управления DropDownList состоит из кнопки привязки, области запроса и раскрывающегося списка. Используйте кнопку привязки для открытия и закрытия выпадающего списка. В области запроса отображается строка запроса или выбранный элемент в раскрывающемся списке.
Когда раскрывающийся список открыт:
Примечание. Элементы управления Spark на основе списка (класс Spark ListBase и его подклассы, такие как ButtonBar, ComboBox, DropDownList, List и TabBar) не поддерживают класс BasicLayout в качестве значения свойства
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Для элемента управления DropDownList по умолчанию установлены следующие характеристики:
Контейнер использует типичный элемент данных и связанное с ним средство визуализации элементов для определения стандартного размера нижестоящих элементов контейнера. При заданном типичном элементе контейнер не должен измерять каждый нижестоящий элемент при выводе его на экран.
Установка этого свойства устанавливает свойство макета
Ограничение. Если
Примечание. Установка значения
<s:GridColumnHeaderGroup>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:GridColumnHeaderGroup Properties columnSeperator="null" dataGrid="null" downColumnIndex="-1" headerRenderer="null" hoverColumnIndex="-1" visibleSortIndicatorIndices="empty Vector.<int>" Styles paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" separatorAffordance="5" Events gridClick="No default" gridDoubleClick="No default" gridMouseDown="No default" gridMouseDrag="No default" gridMouseUp="No default" gridMouseRollOut="No default" gridMouseRollOver="No default" separatorClick="No default" separatorDoubleClick="No default" separatorMouseDrag="No default" separatorMouseUp="No default" separatorMouseRollOut="No default" separatorMouseRollOver="No default" />]]>
Для отображения заголовков используется класс, указанный в свойстве
Если все видимые столбцы, предшествующие указанному столбцу, еще не прокручены в область видимости, возвращаемые границы представлены лишь приблизительно на основе всех
Если все столбцы или строки для сетки еще не прокручены в область видимости, возвращаемая позиция индекса представлена лишь приблизительно на основе свойства
Если запрошенное средство визуализации заголовка не является видимым, то при каждом вызове этого метода создается новое средство визуализации заголовка. Новое средство визуализации элементов невидимо
Ширина возвращенного средства визуализации совпадает с шириной средств визуализации элементов, возвращенных DataGrid/getItemRendererAt().
Предполагается, что разделитель перекрывает указанное местоположение, если координата x находится в пределах
Индекс разделителя аналогичен индексу столбца слева при условии, что для
Если все столбцы или строки для сетки еще не прокручены в область видимости, возвращаемая позиция индекса представлена лишь приблизительно на основе свойства
visibleSortIndicatorIndices.indexOf(columnIndex) != -1
Установка для
Установка для
<s:PopUpAnchor>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:PopUpAnchor Properties displayPopUp="false" popUp="" popUpHeightMatchesAnchorHeight="false" popUpPosition="topLeft" popUpWidthMatchesAnchorWidth="false" />]]>
Элемент управления PopUpAnchor имеет следующие характеристики по умолчанию:
По умолчанию индикатор перетаскивания для элемента управления Spark представляет собой сплошную линию по ширине элемента управления. Создайте пользовательский индикатор перетаскивания, создав пользовательский класс темы оформления для объекта перетаскивания. В классе темы оформления создайте элемент темы оформления с именем
<s:List>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:List Properties allowMultipleSelection="false" dragEnabled="false" dragMoveEnabled="false" dropEnabled="false" selectedIndices="null" selectedItems="null" useVirtualLayout="true" Styles alternatingItemColors="undefined" borderAlpha="1.0" borderColor="0#CCCCCC" borderVisible="true" contentBackgroundColor="0xFFFFFF" downColor="0xA8C6EE" dragIndicator="ListItemDragProxy" dropIndicatorSkin="ListDropIndicator" rollOverColor="0xCEDBEF" selectionColor="0xA8C6EE" symbolColor="0x000000" />]]>
Примечание. Элементы управления Spark на основе списка (класс Spark ListBase и его подклассы, такие как ButtonBar, ComboBox, DropDownList, List и TabBar) не поддерживают класс BasicLayout в качестве значения свойства
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Для элемента управления List по умолчанию установлены следующие характеристики:
Этот метод используется для перетаскивания копии.
При изменении обработчика событий
При изменении обработчика событий
Перетаскивание не поддерживается на мобильных устройствах, если для
Перетаскивание не поддерживается на мобильных устройствах, если для
При установке значения этого свойства
Перетаскивание не поддерживается на мобильных устройствах, если для
Указание для этого свойства любого значения, кроме off, может привести к мгновенному изменению положения прокрутки, обеспечивающему правильную привязку перемещаемого элемента. Для этого изменения положения прокрутки отсутствует анимация.
Если многократный выбор активирован посредством установки значения
Если многократный выбор активирован посредством установки значения
Примечание. Это аналогично свойству
Обычно это свойство –
Если значение установлено и тема оформления списка содержит элемент темы оформления Scroller, то для значения создается прокси в Scroller.
Если значением является
Если значением является
<s:BorderContainer>
tag inherits all the tag attributes
of its superclass, and adds the following tag attributes:
<s:BorderContainer Properties backgroundFill="null" borderStroke="null" Styles backgroundImage="undefined" backgroundImageFillMode="scale" borderAlpha="1.0" borderColor="0xB7BABC" borderStyle="solid" borderVisible="true" borderWeight="1" cornerRadius="0" dropShadowVisible="false" />]]>
Примечание. Поскольку для управления внешним видом BorderContainer используются свойства класса и стили таблицы CSS, для него невозможно создать пользовательскую тему оформления. Если требуется создать пользовательскую тему оформления, класс темы оформления должен применять любые стили для управления внешним видом контейнера.
По умолчанию обводка рамки закруглена. Если не требуется создавать закругленные углы, задайте для свойства
Контейнер BorderContainer имеет следующие характеристики по умолчанию:
В следующем примере свойство
<s:BorderContainer cornerRadius="10"> <s:backgroundFill> <s:SolidColor color="red" alpha="1"/> </s:backgroundFill> </s:BorderContainer>
В следующем примере показана установка свойства
<s:BorderContainer cornerRadius="10"> <s:borderStroke> <mx:SolidColorStroke color="black" weight="3"/> </s:borderStroke> </s:BorderContainer>
Компонент хоста средства визуализации элемента может использовать метод
Для элементов управления, таких как List и ButtonBar, можно использовать свойства
<s:VideoPlayer>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:VideoPlayer Properties autoDisplayFirstFrame="true" autoPlay="true" autoRewind="true" loop="false" muted="false" pauseWhenHidden="true" scaleMode="letterbox" source="" volume="1" Events bytesLoadedChange="No default" complete="No default" currentTimeChange="No default" durationChange="No default" mediaPlayerStateChange="No default" Styles alignmentBaseline="baseline" baselineShift="0" cffHinting="0.0" color="0x000000" digitCase="default" digitWidth="default" direction="ltr" dominantBaseline="auto" dropShadowVisible="true" fontFamily="Arial" fontLookup="device" fontSize="12" fontStyle="normal" fontWeight="normal" justificationRule="auto" justificationStyle="auto" kerning="false" ligatureLevel="common" lineHeight="120%" lineThrough="false%" locale="en" renderingMode="cff" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="start" textJustify="interWord" trackingLeft="0" trackingRight="00" typographicCase="default" />]]>
Элемент управления VideoPlayer имеет следующие характеристики по умолчанию:
Это событие невозможно отправить при значении источника, установленном на null, или при возникновении ошибки воспроизведения.
Это событие невозможно отправить при значении источника, установленном на null, или при возникновении ошибки воспроизведения.
Это событие невозможно отправить при значении источника, установленном на null, или при возникновении ошибки воспроизведения.
<s:ButtonBar>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:ButtonBar />]]>
Как правило, панель кнопок используется для группировки ряда связанных кнопок. Это придает им единообразный вид и единое управление и позволяет обрабатывать логику события
Элемент управления ButtonBar Button создает элементы управления Button в зависимости от значения свойства
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
В проектах, которые не предназначены для мобильных устройств, с помощью элемента управления ButtonBar можно установить активный нижестоящий элемент контейнера ViewStack, как показано в следующем примере:
Примечание. Элементы управления Spark на основе списка (класс Spark ListBase и его подклассы, такие как ButtonBar, ComboBox, DropDownList, List и TabBar) не поддерживают класс BasicLayout в качестве значения свойства
<s:ButtonBar dataProvider="{myViewStack}" requireSelection="true" /> <mx:ViewStack id="myViewStack" borderStyle="solid"> <s:NavigatorContent id="search" label="Search"> <s:Label text="Search Screen"/> </s:NavigatorContent> <s:NavigatorContent id="custInfo" label="Customer Info"> <s:Label text="Customer Info"/> </s:NavigatorContent> <s:NavigatorContent id="accountInfo" label="Account Info"> <s:Label text="Account Info"/> </s:NavigatorContent> </mx:ViewStack>
Для элемента управления ButtonBar по умолчанию установлены следующие характеристики:
<s:Label>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Label Properties fontContext="" Styles alignmentBaseline="baseline" baselineShift="0" cffHinting="0.0" color="0x000000" digitCase="default" digitWidth="default" direction="ltr" dominantBaseline="auto" fontFamily="Arial" fontLookup="embeddedCFF" fontSize="12" fontStyle="normal" fontWeight="normal" justificationRule="auto" justificationStyle="auto" kerning="false" ligatureLevel="common" lineBreak="toFit" lineHeight="120%" lineThrough="false" locale="en" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" renderingMode="cff" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="start" textJustify="interWord" trackingLeft="0" trackingRight="00" typographicCase="default" verticalAlign="top" />]]>
Label использует Flash Text Engine (FTE) в Flash Player для предоставления высококачественной типографики международного уровня. Поскольку Label является «быстрой» и «легкой», она особенно хорошо подходит для тех случаев, которые требуют визуализации очень маленьких объектов неинтерактивного текста, например средств визуализации элементов и меток в темах оформления Button и т. п.
Архитектура Spark, в рамках концепции «плати только за то, что тебе нужно предоставляет» в распоряжение пользователя три текстовых «примитива»: Label, RichText и RichEditableText. Label является наиболее «быстрой» и «легкой», однако ее возможности ограничены отсутствием сложного форматирования, прокрутки, выделения, редактирования и гиперссылок. RichText и RichEditableText основаны на библиотеке Text Layout Framework (TLF), а не на FTE. RichText добавляет возможность визуализации текста HTML со сложным форматированием, однако является полностью неинтерактивным. RichEditableText является самым медленным и самым «тяжелым», но предлагает весь спектр возможностей: поддержку прокрутки с виртуализованными TextLines, выделение, редактирование, гиперссылки и загрузку изображений с URL-адресов и т. п. Мы рекомендуем использовать наиболее быстрый из тех, которые удовлетворяет вашим потребностям.
Элемент управления Spark Label аналогичен элементу управления MX Label mx.controls.Label. Наиболее важные различия:
В Spark Label три последовательности символов распознаются как явные переносы строк: CR (
Если вы не определили тип ширины для Label, то ширина Label определяется самой длинной строкой посредством явного переноса строк.
Если ширина определена, указанный текст обтекает компонент по правому краю, поскольку значение по умолчанию стиля
Для отключения автоматического обтекания текстом установите значение стиля
Если у вас текста больше, чем пространства для его отображения, Label усечет текст. Усечение текста означает замену избыточного текста индикатором усечения, например «...». См. наследованные свойства
Вы можете изменять интерлиньяж с помощью стиля
По умолчанию у Label нет фона, однако его можно создать с помощью стилей
Label поддерживает текст, написанный слева направо (LTR) (например, по-французски), справа налево (RTL) (например, по-арабски), а также в двух направлениях одновременно (например, предложения на французском языке в тексте на арабском). Если основным является направление текста справа налево, установите для стиля
Label использует класс TextBlock в Flash Text Engine для создания одного или нескольких объектов TextLine для статического отображения их текстовых строк в формате, определенном стилями CSS. В целях производительности TextLine не содержит информации об отдельных глифах; более подробно описано в flash.text.engine.TextLineValidity.STATIC.
Для элемента управления Label по умолчанию установлены следующие характеристики:
<s:RichEditableText>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:RichEditableText Properties clipAndEnableScrolling="false|true" contentHeight="Calculated default" contentWidth="Calculated default" displayAsPassword="false" editable="true" heightInLines="NaN" horizontalScrollPosition="0" imeMode="null" maxChars="0" multiline="true" restrict="null" selectable="true" selectionActivePosition="-1" selectionAnchorPosition="-1" selectionHighlighting="TextSelectionHighlighting.WHEN_FOCUSED" text="" textFlow="TextFlow" typicalText=null verticalScrollPosition="0" widthInChars="NaN" Events change="No default" changing="No default" enter="No default" selectionChange="No default" />]]>
Текст RTF может содержать рабочие гиперссылки и графику, которая либо встраивается, либо загружается с указанного URL-адреса.
RichEditableText не имеет полос прокрутки, но реализует интерфейс IViewport для программируемой прокрутки таким образом, чтобы он мог управляться посредством Scroller, который, в свою очередь, имеет полосы прокрутки. Он также поддерживает вертикальную прокрутку с помощью колесика мыши.
В нем отсутствует пользовательский интерфейс для изменения форматирования текста. Однако в нем имеется API, с помощью которых форматирование может выполняться программным способом; они позволяют, например, создать кнопку Bold, нажатие на которую изменяет начертание выделенного текста на полужирное.
Этот класс используется в темах оформления Spark TextInput и TextArea. (TextInput не предоставляет возможностей по обработке текста RTF, в то время как TextArea – предоставляет.) По умолчанию RichEditableText имеет прозрачный фон и не поддерживает рисование границы.
RichEditableText использует библиотеку Text Layout Framework (TLF), построенную, в свою очередь, на новом движке Flash Text Engine (FTE) в Flash Player 10. Вместе эти слои обеспечивают редактируемому тексту высококачественную международную типографику и макет.
Архитектура Spark обеспечивает три текстовых примитива -- Label, RichText и RichEditableText. Label является наиболее быстрым и облегченным из «примитивов», поскольку использует только FTE, а не TLF, однако при этом он ограничен: нет возможности использования текста RTF, прокрутки, выделения и редактирования. RichText добавляет возможность отображения текста RTF со сложным макетом, однако является полностью неинтерактивным. RichEditableText является самым «тяжелым», но предлагает большую часть возможностей, доступных в TLF. Используйте наиболее быстрый примитив из тех, которые удовлетворяет вашим потребностям.
RichEditableText похож на класс UITextField, использованный в компонентах MX. Этот класс не использует FTE или TLF, а расширяет использовавшийся ранее класс TextField.
Наиболее важные различия между UITextField и RichEditableText:
RichEditableText использует объектно-ориентированную модель TLF текста RTF, в которой элементы текстового макета, такие как разделы, абзацы, интервалы, гиперссылки и изображения представлены в среде выполнения объектами ActionScript, к которым можно получить доступ и манипулировать программными средствами. Центральным объектом в TLF для представления текста RTF является TextFlow, таким образом вы определяете текст RTF для элемента управления RichEditableText, устанавливая его свойство
Во время компиляции можно поместить теги разметки TLF в тег RichEditableText, как показано в следующем примере:
<s:RichEditableText>Hello <s:span fontWeight="bold">World!</s:span></s:RichEditableText>В этом случае компилятор MXML устанавливает свойство
Форматирование текста по умолчанию определено стилями CSS, например
Управление межстрочными интервалами выполняется с помощью стиля
По умолчанию размер RichEditableText подстраивается автоматически: при отсутствии текста отображается поле небольшого размера, которое увеличивается в ширину до значения
Свойства
При определении ширины – независимо от того, является эта ширина явной или процентной, ограничением
Для ограничения числа вводимых пользователем символов можно использовать свойство
Свойство
Если возможность редактирования текста должна отсутствовать, установите значение свойства
Поскольку RichEditableText использует TLF, он поддерживает текст, написанный слева направо (LTR) (например, по-французски), справа налево (RTL) (например, по-арабски), а также в двух направлениях одновременно (например, предложения на французском языке в тексте на арабском). Если основным является направление текста справа налево, установите для стиля
Как результат использования TLF RichEditableText поддерживает неограниченное число операций отмены/повтора в рамках одного сеанса. Началом сеанса редактирования считается получение компонентом фокуса клавиатуры, а окончанием – его потеря.
RichEditableText использует класс TLF TextContainerManager для обработки текстового отображения, прокрутки, выделения, редактирования и контекстного меню.
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
После нового текста устанавливается точка вставки. В случае необходимости текст будет прокручен для обеспечения видимости точки вставки.
Если формат не задан на протяжении всего диапазона, то его значение будет равно
Можно определить вектор строк, содержащий имена требуемых форматов; в противном случае все форматы будут вычислены автоматически.
Если диапазон не указан, то используется выбранный диапазон.
При выборе диапазона новый текст заменяет выбранный текст. При наличии точки вставки новый текст вставляется в этом месте.
После нового текста устанавливается точка вставки. В случае необходимости текст будет прокручен для обеспечения видимости точки вставки.
Если любая из позиций является отрицательной, выбор текстового диапазона отменяется.
Поддерживаются форматы TextLayoutFormat. Значение
В следующем примере устанавливается
var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat(); textLayoutFormat.fontSize = 12; textLayoutFormat.color = 0xFF0000; myRET.setFormatOfRange(textLayoutFormat);
Если результаты
Для указания формата, который будет применен ко всему тексту, рекомендуется использовать
В следующем примере устанавливается
myRET.setStyle("fontSize", 12); myRET.setStyle("color", 0xFF0000);
Поскольку Text Layout Framework в целях производительности виртуализует TextLines, эта высота первоначально будет оценена приблизительно, если компонент не сможет отобразить весь текст. При прокрутке текста до конца все строки TextLine будут скомпонованы, а значение
Для прокрутки текста по вертикали следует изменять
Поскольку Text Layout Framework в целях производительности виртуализует TextLines, эта ширина первоначально будет оценена приблизительно, если компонент не сможет отобразить весь текст. При прокрутке текста до конца все строки TextLine будут скомпонованы, а значение
Для прокрутки текста по горизонтали следует изменять
Свойство
<s:RichEditableText>Hello <s:span fontWeight="bold"/>World</s:span></s:RichEditableText>имея String и SpanElement, определяемые в качестве содержимого, которое используется при создании TextFlow.
Это свойство отмечено как Object, поскольку оно может быть установлено как String, FlowElement или как массив String и FlowElement. В вышеприведенном примере содержимое является двухэлементным массивом, первым элементом которого является строка Hello, а вторым элементом – объект SpanElement, содержащий текст World в полужирном начертании.
Независимо от определения содержимого оно преобразуется в объект TextFlow, поэтому при получении данного свойства вы получаете и результирующий TextFlow.
Adobe рекомендует использовать свойство
Если значение равно
Если значение данного свойства равно
Стили форматирования элементов управления, например
Например, если вы хотите изменить высоту RichEditableText таким образом, чтобы отобразить 5 строк текста, установите это свойство на значение 5.
Если это свойство равно
Это свойство игнорируется, если устанавливаются явные значения высоты, процентные значения высоты или ограничения
Это свойство также будет проигнорировано, если указано свойство
Метод RichEditableText
Поскольку значение по умолчанию для
Для прокрутки текста по горизонтали следует изменять
Класс flash.system.IMEConversionMode определяет константы для допустимых значений этого свойства. Можно также указать значение
Если
Разрешение на выделение текста позволяет скопировать его из элемента управления.
Данное свойство игнорируется, если значение свойства
Активная позиция может служить как началом, так и концом выбора.
Например, если вы выделили текст мышью с позиции 12 до позиции 8, то
Значение -1 означает not set.
Позиция привязки может быть как началом, так и концом выбора.
Например, если вы выделили текст мышью с позиции 12 до позиции 8, то
Значение -1 означает not set.
Допустимые значения определены в классе spark.components.TextSelectionHighlighting. Возможными значениями являются:
Значение
Значение
Значение
TextFlow является наиболее важным классом в Text Layout Framework (TLF). Этот класс является корнем дерева FlowElements, представляющего содержимое в формате RTF.
Обычно TextFlow создается из разметки TLF с использованием методов
Установка этого свойства влияет на свойство
При установке
При установке в качестве значения
Если текст содержит явные переносы строк – CR (\r), LF (\n) или CR+LF (\r\n), то содержимое устанавливается на TextFlow, который содержит несколько абзацев, каждый с одним интервалом.
Установка этого свойства также влияет на свойства, определяющие позицию прокрутки элемента управления и текстовых выделений. Она сбрасывает
Чтобы превратить объект TextFlow в разметку TLF, используйте разметку
К одному TextFlow невозможно выполнить доступ нескольких экземпляров RichEditableText. Для отображения того же текста во втором экземпляре необходимо создать второй TextFlow, либо с помощью
Установка этого свойства влияет на свойство
При установке в качестве значения
Если для
Если текст содержит явные переносы строк – CR (\r), LF (\n) или CR+LF (\r\n), то содержимое устанавливается на TextFlow, который содержит несколько абзацев, каждый с одним интервалом.
При установке
Установка этого свойства также влияет на свойства, определяющие позицию прокрутки элемента управления и текстовых выделений. Оно обнуляет значения свойств
Это свойство игнорируется, если устанавливаются явные значения ширины, процентные значения ширины или ограничения
Использование этого свойства приводит к тому, что свойства
Для прокрутки текста по вертикали следует изменять
em – это типографская единица измерения, равная размеру одного пункта. Она не обязательно равна ширине символа M, однако во многих шрифтах символ M равен ширине одного em. Стиль элемента управления
Например, если вы хотите изменить ширину RichEditableText таким образом, чтобы отобразить 20 текстовых символов, установите это свойство на значение 20.
Если это свойство равно
Это свойство игнорируется, если устанавливаются явные значения ширины, процентные значения ширины или ограничения
Это свойство также будет проигнорировано, если указано свойство
Метод RichEditableText
Поскольку значение по умолчанию для
Flex не закрывает окно автоматически. Flex не закрывает окно автоматически. Для поддержки значка закрытия необходимо создать обработчик события
Фокус отключен для этого элемента темы оформления.
Чтобы перетащить контейнер TitleWindow, нажмите и удерживайте курсор мыши в области строки заголовка окна, а затем переместите мышь. Создайте пользовательский класс темы оформления для изменения области перемещения.
<s:TitleWindow>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:TitleWindow> Events close="No default" windowMove="No default" windowMoveEnd="No default" windowMoveStart="No default" windowMoving="No default" </s:TitleWindow>]]>
TitleWindow проектирован как всплывающее окно. Не создавайте TitleWindow в MXML как часть приложения. Как правило, создается пользовательский компонент MXML, основанный на классе TitleWindow, и затем используется метод
Контейнер TitleWindow имеет следующие характеристики размеров по умолчанию:
<s:TabBar>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:TabBar Styles cornerRadius="4" />]]>
Набор табуляторов определяется свойством
Можно использовать элемент управления TabBar, чтобы установить активный нижестоящий элемент контейнера ViewStack, как показано в следующем примере:
Примечание. Элементы управления Spark на основе списка (класс Spark ListBase и его подклассы, такие как ButtonBar, ComboBox, DropDownList, List и TabBar) не поддерживают класс BasicLayout в качестве значения свойства
<s:TabBar dataProvider="{myViewStack}"/> <mx:ViewStack id="myViewStack" borderStyle="solid"> <s:NavigatorContent id="search" label="Search"> <s:Label text="Search Screen"/> </s:NavigatorContent> <s:NavigatorContent id="custInfo" label="Customer Info"> <s:Label text="Customer Info"/> </s:NavigatorContent> <s:NavigatorContent id="accountInfo" label="Account Info"> <s:Label text="Account Info"/> </s:NavigatorContent> </mx:ViewStack>
Контейнер TabBar имеет следующие характеристики по умолчанию:
<s:RadioButton>
tag inherits all of the tag
attributes of its superclass, and adds the following tag attributes:
<s:RadioButton Properties enabled="" group="the automatically created default RadioButtonGroup" groupName="radioGroup" value="null" />]]>
Группа RadioButton может ссылаться на группу, созданную тегом
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Компонент RadioButton по умолчанию имеет характеристики, перечисленные ниже.
При создании переключателей для добавления в RadioButtonGroup мы рекомендуем использовать для всех кнопок свойства
Компонент хоста средства визуализации элемента может использовать метод
Для элементов управления, таких как List и ButtonBar, можно использовать свойства
<s:Panel>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Panel Properties controlBarContent="null" controlBarLayout="HorizontalLayout" controlBarVisible="true" title="" Styles borderAlpha="0.5" borderColor="0" borderVisible="true" cornerRadius="0" dropShadowVisible="true" > ... child tags ... </s:Panel>]]>
Контейнер Panel имеет следующие характеристики по умолчанию:
Примечание. Контейнер Panel не отслеживает свойство
<s:HGroup>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:HGroup Properties columnWidth="no default" gap="6" horizontalAlign="left" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" requestedColumnCount="-1" requestedMaxColumnCount="-1" requestedMinColumnCount="-1" variableColumnWidth"true" verticalAlign="top" />]]>
Контейнер HGroup имеет следующие характеристики по умолчанию:
Класс, определяющий средство визуализации должен обеспечивать реализацию интерфейса IItemRenderer.
И, наконец, данный метод определяет свойство
<s:FormItem>
tag inherits all the tag
attributes of its superclass and adds no new tag attributes:
<s:FormItem Properties helpContent="null" label="" required="false" sequenceLabel="" Common Styles errorIndicatorSource="assets/ErrorIndicator.png" requiredIndicatorSource="assets/RequiredIndicator.png" Mobile Styles leading="2" letterSpacing="0" />]]>
Это свойство управляет только состоянием темы оформления. Если необходимо проверить правильность введенных данных, добавьте соответствующее средство проверки в нижестоящий элемент.
<s:SkinnableContainer>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:SkinnableContainer Properties autoLayout="true" creationPolicy="auto" layout="BasicLayout" Styles accentColor="0x0099FF" alignmentBaseline="useDominantBaseline" alternatingItemColors="" backgroundAlpha="1.0" backgroundColor="0xFFFFFF" baselineShift="0.0" blockProgression="TB" breakOpportunity="auto" cffHinting="horizontal_stem" clearFloats="none" color="0" contentBackgroundAlpha="" contentBackgroundColor="" digitCase="default" digitWidth="default" direction="LTR" dominantBaseline="auto" downColor="" firstBaselineOffset="auto" focusColor="" focusedTextSelectionColor="" fontFamily="Arial" fontLookup="device" fontSize="12" fontStyle="normal" fontWeight="normal" inactiveTextSelectionColor="0xE8E8E8" justificationRule="auto" justificationStyle="auto" kerning="auto" leadingModel="auto" ligatureLevel="common" lineHeight="120%" lineThrough="false" listAutoPadding="40" listStylePosition="outside" listStyleType="disc" locale="en" paragraphEndIndent="0" paragraphSpaceAfter="0" paragraphSpaceBefore="0" paragraphStartIndent="0" renderingMode="CFF" rollOverColor="" symbolColor="" tabStops="null" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="none" textIndent="0" textJustify="inter_word" textRotation="auto" trackingLeft="0" trackingRight="0" typographicCase="default" unfocusedTextSelectionColor="" verticalScrollPolicy="auto" whiteSpaceCollapse="collapse" wordSpacing="100%,50%,150%" Events elementAdd="No default" elementRemove="No default" />]]>
Для повышения производительности и минимизации размеров приложений используется контейнер группы. Контейнер группы не может иметь оболочки.
Контейнер SkinnableContainer имеет следующие характеристики по умолчанию:
Измените эту функцию для присоединения вариантов поведения компоненту темы. Если требуется изменить варианты поведения компонента темы оформления, унаследованные от базового класса, не вызывайте метод
Измените эту функцию для удаления вариантов поведения из компонента.
<s:RichText>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:RichText Properties fontContext="IFlexModuleFactory" luminosityClip="false" luminosityInvert="false" maskType="MaskType.CLIP" textFlow="TextFlow" />]]>
По причинам производительности он не поддерживает прокрутку, выделение, редактирование, переходы по гиперссылкам и загрузку изображений с URL-адресов. Если вам требуются эти возможности, используйте класс RichEditableText.
RichText использует библиотеку Text Layout Framework (TLF), построенную, в свою очередь, на движке Flash Text Engine (FTE) в Flash Player 10. Вместе они позволяют работать в макете RTF, используя высококачественную международную типографику.
Архитектура Spark обеспечивает три текстовых примитива -- Label, RichText и RichEditableText. Label является наиболее быстрым и облегченным из «примитивов», поскольку использует только FTE, а не TLF, однако при этом он ограничен: нет возможности использования текста RTF, прокрутки, выделения и редактирования. RichText добавляет возможность отображения текста RTF со сложным макетом, однако является полностью неинтерактивным. RichEditableText является самым «тяжелым», но предлагает большую часть возможностей, доступных в TLF. Мы рекомендуем использовать наиболее легкий «примитив» из тех, которые удовлетворяет вашим потребностям.
RichText похож на элемент управления MX mx.controls.Text. В элементе управления Text для отображения текста используется предыдущий класс TextField, а не TLF.
Наиболее важные различия между RichText и Text:
RichText использует объектно-ориентированную модель TLF текста RTF, в которой элементы текстового макета, такие как разделы, абзацы, интервалы и изображения, представлены в среде выполнения объектами ActionScript, к которым можно получить доступ и манипулировать программными средствами. Центральным объектом в TLF для представления текста RTF является TextFlow, таким образом вы определяете текст RTF для отображения его с помощью RichText, устанавливая его свойство
Во время компиляции можно поместить теги разметки TLF в тег RichText, как показано в следующем примере:
<s:RichText>Hello <s:span fontWeight="bold">World!</s:span></s:RichText>В этом случае компилятор MXML устанавливает свойство
Форматирование текста по умолчанию определено стилями CSS, например
Управление межстрочными интервалами выполняется с помощью стиля
Если вы не определили тип ширины для RichText, то ширина Label определяется самой длинной строкой посредством явного переноса строк.
Если ширина определена, текст обтекает компонент по правому краю, при этом, если весь текст не вмещается, он будет отсечен. Если значение стиля
Если у вас текста больше, чем пространства для его отображения, RichText усечет текст. Усечение текста означает замену избыточного текста индикатором усечения, например «...». См. наследованные свойства
По умолчанию у RichText нет фона, однако его можно создать с помощью стилей
Поскольку RichText использует TLF, он поддерживает текст, написанный слева направо (LTR) (например, по-французски), справа налево (RTL) (например, по-арабски), а также в двух направлениях одновременно (например, предложения на французском языке в тексте на арабском). Если основным является направление текста справа налево, установите для стиля
RichText использует классы TLF StringTextFlowFactory и TextFlowTextLineFactory для создания одного или нескольких объектов TextLine, чтобы статически отобразить его текст. В целях производительности TextLine не содержит информации об отдельных глифах; более подробно описано в разделе класса TextLineValidity.
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Свойство
<s:RichText>Hello <s:span fontWeight="bold"/>World</s:span></s:RichText>имея String и SpanElement, определяемые в качестве содержимого, которое используется при создании TextFlow.
Это свойство отмечено как Object, поскольку оно может быть установлено как String, FlowElement или как массив String и FlowElement. В вышеприведенном примере содержимое является двухэлементным массивом, первым элементом которого является строка Hello, а вторым элементом – объект SpanElement, содержащий текст World в полужирном начертании.
Независимо от определения содержимого оно преобразуется в объект TextFlow, поэтому при получении данного свойства вы получаете и результирующий TextFlow.
Adobe рекомендует использовать свойство
maskType определяет, как маска применяется к компоненту.
Возможными значениями являются
Обрезка по маске
Если маскирование находится в режиме обрезки, обрезочные маски уменьшаются до однобитовых. Это означает, что маска не будет влиять на непрозрачность пикселей в исходном содержимом; она либо оставит значение без изменения (если соответствующий пиксель в маске имеет ненулевое значение альфа-канала), либо сделает его полностью прозрачным (если пиксель маски имеет нулевое значение альфа-канала).
При обрезке по маске для достижения эффекта в исходном содержимом используются только фактические векторы кривых и фигур, а также заливки, определенные маской. обводки и растровые фильтры, определенные в маске, игнорируются. Любая заполненная область в маске считается заполненной и визуализирует исходное содержимое. Тип и параметры заливки не являются релевантными; сплошная, градиентная или растровая заливки выполняют визуализацию основного исходного содержимого независимо от значений альфа-канала заливки маски.
При использовании в обрезочной маске BitmapGraphics обрабатываются как прямоугольники с растровой заливкой. В результате при включении исходного растрового изображения в маску его альфа-канал становится нерелевантным: растровое изображение становится для маски эквивалентным прямоугольнику со сплошной заливкой того же размера.
Альфа-маскирование
В режиме альфа-маскирования непрозрачность каждого пиксела в исходном содержимом умножается на непрозрачность соответствующей области маски. т. е. пиксель исходного содержимого с непрозрачностью 1, маскированный областью с непрозрачностью 0,5, получит в результате непрозрачность 0,5. Исходный пиксель с непрозрачностью 0,8, маскированный областью с непрозрачностью 0,5, получит в результате непрозрачность 0,4.
В общем и целом альфа-маскирование эквивалентно визуализации преобразованной маски и исходного содержимого в отдельное пространство RGBA и умножению альфа-канала содержимого маски на альфа-канал исходного содержимого. Все содержимое маски визуализируется на ее поверхности перед созданием поверхности исходного содержимого. В результате на окончательное комбинированное содержимое влияют все функции FXG, например обводки, растровые фильтры и непрозрачность заливки.
При работе в альфа-режиме альфа-канал любых растровых данных обычно комбинируется в альфа-канале маски, что влияет на конечное визуализированное содержимое. То же самое верно как для BitmapGraphics, так и для векторов и фигур с растровой заливкой.
Маскирование свечения
Маска свечения, иногда называемая «мягкой маской», действует аналогично маске альфа-канала, за исключением того, что как непрозрачность, так и значение цвета RGB пикселя в исходном содержимом умножаются на непрозрачность и значение цвета RGB в соответствующей области в маске.
В общем и целом маскирование свечения эквивалентно визуализации преобразованной маски и исходного содержимого в отдельное пространство RGBA и умножению альфа-канала и значения цвета RGB содержимого маски на альфа-канал и значение цвета RGB исходного содержимого. Все содержимое маски визуализируется на ее поверхности перед созданием поверхности исходного содержимого. В результате на окончательное комбинированное содержимое влияют все функции FXG, например обводки, растровые фильтры и непрозрачность заливки.
Маскирование свечения не принадлежит Flash, но распространено в таких инструментах Adobe Creative Suite, как Adobe Illustrator и Adobe Photoshop. Чтобы выполнить визуальный эффект маски свечения в содержимом, визуализируемом в Flash, графический элемент, определяющий маску свечения, фактически создает экземпляр фильтра затенения, который имитирует визуальный вид маски свечения, как если бы он был выполнен посредством инструментов Adobe Creative Suite.
Объекты, к которым применяются маски свечения, могут установить свойства для управления значением цвета RGB и обрезкой маски. См. атрибуты luminosityInvert и luminosityClip.
TextFlow является наиболее важным классом в Text Layout Framework (TLF). Этот класс является корнем дерева FlowElements, представляющего содержимое в формате RTF.
Обычно TextFlow создается из разметки TLF с использованием методов
Установка этого свойства влияет на свойство
При установке
При установке в качестве значения
Если текст содержит явные переносы строк – CR (
Для преобразования объекта TextFlow в разметку TLF можно использовать разметку, возвращенную из метода
<s:SkinnableDataContainer>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:SkinnableDataContainer Properties autoLayout="true" dataProvider="null" itemRenderer="null" itemRendererFunction="null" layout="VerticalLayout" typicalItem="null" Styles alignmentBaseline="useDominantBaseline" baselineShift="0.0" cffHinting="horizontal_stem" color="0" digitCase="default" digitWidth="default" direction="LTR" dominantBaseline="auto" focusAlpha="0.55" focusColor="" focusThickness="2" fontFamily="Arial" fontLookup="device" fontSize="12" fontStyle="normal" fontWeight="normal" justificationRule="auto" justificationStyle="auto" kerning="auto" ligatureLevel="common" lineHeight="120%" lineThrough="false" locale="en" renderingMode="CFF" textAlign="start" textAlignLast="start" textAlpha="1" textJustify="inter_word" trackingLeft="0" trackingRight="0" typographicCase="default" Events rendererAdd="No default" rendererRemove="No default" />]]>
Класс SkinnableDataContainer считает элементы данных и визуальные элементы, реализующие интерфейс IVisualElement и являющиеся объектами отображения, нижестоящими элементами. Элементы данных могут быть простыми элементами данных, такими как объекты String и Number, и более сложными элементами данных, например объектами Object и XMLNode. В то время как эти контейнеры могут хранить визуальные элементы, они зачастую используются только для хранения элементов данных в качестве нижестоящих элементов.
Средство визуализации элементов определяет визуальное представление элемента данных в контейнере. Средство визуализации элементов преобразовывает элемент данных в формат, который может быть отображен контейнером. Для корректной визуализации элементов данных следует передать средство визуализации в контейнер SkinnableDataContainer.
Если необходим контейнер элементов данных и не требуется тема оформления, то для повышения производительности и минимизации размера приложения рекомендуется использовать DataGroup (который не может иметь темы оформления).
Контейнер SkinnableDataContainer имеет следующие характеристики по умолчанию:
<s:Scroller>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Scroller Properties measuredSizeIncludesScrollBars="true" minViewportInset="0" viewport="null" Styles alignmentBaseline="use_dominant_baseline" alternatingItemColors="" baselineShift="0.0" blockProgression="TB" breakOpportunity="auto" cffHinting="horizontal_stem" clearFloats="none" color="0" contentBackgroundAlpha="" contentBackgroundColor="" digitCase="default" digitWidth="default" direction="LTR" dominantBaseline="auto" downColor="" firstBaselineOffset="auto" focusColor="" focusedTextSelectionColor="" fontFamily="Arial" fontLookup="device" fontSize="12" fontStyle="normal" fontWeight="normal" horizontalScrollPolicy="auto" inactiveTextSelection="" justificationRule="auto" justificationStyle="auto" kerning="auto" leadingModel="auto" ligatureLevel="common" lineHeight="120%" lineThrough="false" listAutoPadding="40" listStylePosition="outside" listStyleType="disc" locale="en" paragraphEndIndent="0" paragraphSpaceAfter="0" paragraphSpaceBefore="0" paragraphStartIndent="0" renderingMode="CFF" rollOverColor="" symbolColor="" tabStops="null" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="none" textIndent="0" textJustify="inter_word" textRotation="auto" trackingLeft="0" trackingRight="0" typographicCase="default" unfocusedTextSelectionColor="" verticalScrollPolicy="auto" whiteSpaceCollapse="collapse" wordSpacing="100%,50%,150%" />]]>
Компоненты Spark Group, DataGroup и RichEditableText реализуют интерфейс IViewport и могут использоваться в качестве нижестоящих элементов элемента управления Scroller, как показано в примере:
<s:Scroller width="100" height="100"> <s:Group> <mx:Image width="300" height="400" source="@Embed(source='assets/logo.jpg')"/> </s:Group> </s:Scroller>
Для элемента управления Image установлен больший размер, чем для его вышестоящего контейнера Group. По умолчанию нижестоящий элемент расширяется за границы вышестоящего контейнера. Для того чтобы не позволить нижестоящему элементу расширяться за границы вышестоящего контейнера, Scroller выполняет отсечение нижестоящего элемента по границам вышестоящего и отображение полосы прокрутки.
Не все контейнеры Spark реализуют интерфейс IViewPort. Поэтому такие контейнеры, как BorderContainer и SkinnableContainer, не могут использоваться в качестве прямого нижестоящего элемента компонента Scroller. Однако все контейнеры Spark могут иметь компонент Scroller в качестве нижестоящего компонента. Например, чтобы использовать полосы прокрутки в нижестоящем элементе Spark BorderContainer, следует заключить нижестоящий элемент в компонент Scroller.
Чтобы сделать BorderContainer полностью прокручиваемым, его необходимо вложить в контейнер Group. Затем установите контейнер Group в качестве нижестоящего элемента компонента Scroller. Пользовательская тема оформления, включающая компонент Scroller, может быть создана и для контейнеров Spark, которые поддерживают темы оформления и не реализуют интерфейс IViewport.
Интерфейс IViewport определяет область просмотра для компонентов, которые реализуют его. Область просмотра представляет собой ограниченную прямоугольной рамкой часть области контейнера, которую требуется отобразить вместо отображения всего контейнера. Полосы прокрутки управляют свойствами области просмотра
Вы можете объединить полосы прокрутки с помощью явных параметров настройки для области просмотра контейнера. Параметры настройки области просмотра определяют начальную позицию области просмотра, после чего вы сможете использовать панель прокрутки для ее перемещения, как показано в примере:
<s:Scroller width="100" height="100"> <s:Group horizontalScrollPosition="50" verticalScrollPosition="50"> <mx:Image width="300" height="400" source="@Embed(source='assets/logo.jpg')"/> </s:Group> </s:Scroller>
Полосы прокрутки отображаются в соответствии со стратегией отображения вертикальной и горизонтальной полос прокрутки, которая может быть
Макет темы оформления Scroller не может быть изменен. Он установлен на закрытую реализацию макета, которая обрабатывает стратегии прокрутки. Темы оформления Scroller могут предоставлять только полосы прокрутки замены. Для получения больших возможностей по управлению макетом области просмотра и его полосами прокрутки вместо использования Scroller добавьте их к
Элемент управления Scroller имеет следующие характеристики по умолчанию:
При наличии видимого verticalScrollBar область просмотра по умолчанию прокручивается вертикально на количество шагов, указанных в
При наличии видимого horizontalScrollBar область просмотра по умолчанию прокручивается горизонтально на количество шагов, указанных в
Вызов метода
Такие компоненты, как TextArea, которые «перекомпоновывают» свое содержимое для размещения его в доступных размерах по высоте и ширине могут использовать данное свойство для стабилизации измеренного размера. По умолчанию TextArea определяется своими свойствами
В компонентах, в которых не выполняется перекомпоновка, например в элементах List, поведение по умолчанию является предпочтительным, поскольку оно делает менее вероятным затенение содержимого компонента полосой прокрутки.
Область просмотра добавлена к теме оформления компонента Scroller, размещающей область просмотра и полосы прокрутки. Когда свойство
<s:VGroup>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:VGroup Properties gap="6" horizontalAlign="left" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" requestedMaxRowCount="-1" requestedMinRowCount="-1" requestedRowCount"-1" rowHeight="no default" variableRowHeight="true" verticalAlign="top" />]]>
Контейнер VGroup имеет следующие характеристики по умолчанию:
<s:ComboBox>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:ComboBox Properties itemMatchingFunction="null" labelToItemFunction="null" maxChars="0" openOnInput="true" prompt="null" restrict="" Styles paddingBottom="3" paddingLeft="3" paddingRight="3" paddingTop="5" />]]>
Различие между этими элементами управления состоит в том, что область запроса элемента управления ComboBox реализуется с использованием элемента управления TextInput, тогда как элемент управления Label используется для элемента управления DropDownList. Таким образом, пользователь может редактировать область запроса элемента управления и вводить значения, которые не являются предопределенными параметрами.
Например, элемент управления DropDownList позволяет выбирать только из списка заранее определенных элементов в элементе управления. Элемент управления ComboBox позволяет пользователю выбирать предопределенный элемент или вводить новый элемент в область запроса. Пользовательское приложение может распознать ввод нового элемента и ввести его в список элементов в элементе управления по желанию пользователя.
Также элемент управления ComboBox выполняет поиск в списке элементов при вводе пользователем символов в область запроса. При введении пользователем символов открывается раскрывающаяся область элемента управления. Затем выполняется прокрутка и цветом выделяется самое близкое соответствие в списке элементов.
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Примечание. Элементы управления Spark на основе списка (класс Spark ListBase и его подклассы, такие как ButtonBar, ComboBox, DropDownList, List и TabBar) не поддерживают класс BasicLayout в качестве значения свойства
Для элемента управления ComboBox установлены следующие характеристики по умолчанию:
spark.skins.spark.ComboBoxTextInputSkin
Функция, на которую ссылается это свойство, получает строку ввода и возвращает в поставщик данных индекс элементов, которые соответствуют вводу. Элементы возвращаются как вектор.<int> индексов в поставщике данных.
Функция обратного вызова должна иметь следующую подпись:
function myMatchingFunction(comboBox:ComboBox, inputText:String):Vector.<int>
Если значением этого свойства является null, то ComboBox находит соответствия с использованием заданного по умолчанию алгоритма. По умолчанию принято, что если входная строка длины n эквивалентна первым символам n элемента (без учета регистра), то она соответствует этому элементу. Например, aRiz совпадает с Arizona, в то время как riz – нет.
Для отмены поиска следует создать функцию обратного вызова, которая возвращает пустой вектор.<int>.
При первом создании элемента управления на экране отображается запрос. Запрос не отображается, когда элемент управления получает фокус, для вводимого текста указано ненулевое значение, а также при выборе элемента списка. Запрос выводится повторно, когда элемент управления теряет фокус и значением текстового поля является null или пустая строка (т. е. текст не был введен).
Для изменения стиля запроса можно использовать CSS. Если элемент управления не выключен и содержит запрос, стиль определяется псевдоселектором
В следующем примере CSS изменяет цвет текста запроса в элементах управления TextInput. Элемент управления ComboBox использует элемент управления TextInput как подчиненный компонент для запросов и ввода, поэтому его текст запросов изменяется при использовании следующего CSS:
@namespace s "library://ns.adobe.com/flex/spark"; s|TextInput:normalWithPrompt { color: #CCCCFF; }
Функция обратного вызова должна иметь следующую подпись:
function myLabelToItem(value:String):Object
Где
Заданная по умолчанию функция обратного вызова возвращает
<s:Image>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:Image Properties clearOnLoad="true" contentLoader="null" contentLoaderGrouping="null" fillMode="scale" horizontalAlign="center" preliminaryHeight="NaN" preliminaryWidth="NaN" scaleMode="letterbox" smooth="false" source="null verticalAlign="middle" Styles backgroundAlpha="NaN" backgroundColor="NaN" enableLoadingState="false" smoothingQuality="default" Events complete="No default" httpStatus="No default" ioError="No default" progress="No default" ready="No default" securityError="No default" />]]>
Примечание. Flex также включает элемент управления SWFLoader для загрузки приложений Flex. Элемент управления Image обычно используется для загрузки статических графических файлов и файлов SWF, а элемент управления SWFLoader – для загрузки приложений Flex. Элемент управления Image также предназначен для применения в пользовательских средствах визуализации и редакторах элементов.
Примечание. Flex также включает класс BitmapImage. Этот класс используется для внедрения изображений в темы оформления и компоненты FXG.
Встроенные изображения загружаются немедленно, так как они уже являются частью файла Flex SWF. Однако они увеличивают размер приложения и замедляют процесс его инициализации. Встроенные изображения также требуют перекомпиляции приложения при каждом изменении файлов изображения.
Альтернативой встроенному ресурсу является загрузка ресурса во время выполнения. Можно загрузить ресурс из локальной файловой системы, в которой выполняется файл SWF, или обратиться к удаленному ресурсу, обычно через запрос HTTP по сети. Эти изображения являются независимыми от приложения Flex, поэтому их можно изменять, не вызывая операции перекомпиляции при условии, что имена изменяющихся изображений будут сохранены. Вызванные изображения не добавляют дополнительное время ко времени начальной загрузки приложения. Однако может возникнуть задержка при использовании изображений и загрузке их в Flash Player или AIR.
Тема оформления по умолчанию предоставляет тему оформления изображения без дополнительных элементов оформления с предварительным загрузчиком на основе типового индикатора выполнения и значком отсутствия изображения, обозначающим недействительное содержимое.
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Элемент управления Image имеет следующие характеристики по умолчанию:
Следует учесть, что для содержимого, загруженного с помощью Loader, отправляются события
Примечание. Передача события
Обратите внимание, что для содержимого, загруженного с помощью Loader, отправляются события
<s:DataGroup>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:DataGroup Properties dataProvider="null" itemRenderer="null" itemRendererFunction="null" typicalItem="null" Events rendererAdd="No default" rendererRemove="No default" />]]>
Класс DataGroup считает элементы данных и визуальные элементы, реализующие интерфейс IVisualElement и являющиеся DisplayObjects, нижестоящими элементами. Элементы данных могут быть простыми элементами данных, такими как объекты String и Number, и более сложными элементами данных, например объектами Object и XMLNode. В то время как эти контейнеры могут хранить визуальные элементы, они зачастую используются только для хранения элементов данных в качестве нижестоящих элементов.
Средство визуализации элементов определяет визуальное представление элемента данных в контейнере. Средство визуализации элементов преобразовывает элемент данных в формат, который может быть отображен контейнером. Для корректной визуализации элементов данных следует передать средство визуализации в контейнер DataGroup.
Для повышения производительности и минимизации размеров приложений контейнер DataGroup не может иметь темы оформления. При необходимости применения тем оформления вместо него следует использовать SkinnableDataContainer.
Контейнер DataGroup имеет следующие характеристики по умолчанию:
Если
Соответствующее средство визуализации элементов для каждого возвращенного индекса извлекается посредством метода
Порядок элементов в возвращенном векторе не гарантируется.
Обратите внимание, что классы VerticalLayout и HorizontalLayout предоставляют связываемые свойства
Этот метод вызывается автоматически при непосредственном изменении
В случае с элементом данных возвращает представление
И, наконец, данный метод определяет свойство
Существует несколько реализаций IList, включенных в инфраструктуру Flex, включая ArrayCollection, ArrayList и XMLListCollection.
function myItemRendererFunction(item:Object):IFactory
Контейнер использует типичный элемент данных и связанное с ним средство визуализации элементов для определения стандартного размера нижестоящих элементов контейнера. При заданном типичном элементе контейнер не должен измерять каждый нижестоящий элемент при выводе его на экран.
Установка этого свойства устанавливает свойство макета
Ограничение. Если
<s:HSlider>
tag inherits all of the tag
attributes of its superclass and adds no tag attributes:
<s:HSlider/>]]>
Ползунок может включать непрерывный диапазон значений перемещения между его минимальным и максимальным значениями, или же его перемещение может быть ограничено определенными интервалами между минимальным и максимальным значениями. Ползунок может содержать всплывающую подсказку для отображения его текущего значения.
Для элемента управления HSlider по умолчанию установлены характеристики, перечисленные ниже.
spark.skins.spark.HSliderThumbSkin
spark.skins.spark.HSliderTrackSkin
<s:DataGrid>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:DataGrid Properties columns="null" dataProvider="null" dataTipField="null" dataTipFunction="null" editable="false" editorColumnIndex="-1" editorRowIndex="-1" imeMode="null" itemEditor="null" itemRenderer="DefaultGridItemRenderer" preserveSelection="true" requestedColumnCount="-1" requestedMaxRowCount="-1" requestedMinColumnCount="-1" requestedMinRowCount="-1" requestedRowCount="-1" requireSelection="false" resizeableColumns="true" rowHeight="Calculated default" selectedCell="null" selectedCells="empty Vector.<CellPosition>" selectedIndex="null" selectedIndices="empty Vector.<CellPosition>" selectedItem="null" selectedItems="empty Vector.<Object>" selectionMode="singleRow" showDataTips="false" sortableColumns="true" typicalItem="null" variableRowHeight="false" Styles alignmentBaseline="useDominantBaseline" baselineShift="0.0" cffHinting="horizontalStem" color="0" defaultGridItemEditor="null" digitCase="default" digitWidth="default" direction="ltr" dominantBaseline="auto" fontFamily="Arial" fontLookup="device" fontSize="12" fontStyle="normal" fontWeight="normal" justificationRule="auto" justificationStyle="auto" kerning="auto" ligatureLevel="common" lineHeight="120%" lineThrough="false" locale="en" renderingMode="cff" stretchCursor="cursorStretch symbol from Assets.swf" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="none" textJustify="interWord" trackingLeft="0" trackingRight="0" typographicCase="default" verticalScrollPolicy="auto" Styles for the Spark Theme alternatingRowColors="undefined" borderAlpha="1.0" borderColor="0x696969" borderVisible="true" caretColor="0x0167FF" contentBackgroundAlpha="1.0" contentBackgroundColor="0xFFFFFF" rollOverColor="0xCEDBEF" selectionColor="0xA8C6EE" symbolColor="0x000000" Styles for the Mobile Theme leading="0" letterSpacing="0" selectionColor="0xE0E0E0" symbolColor="0x000000" Events caretChange="No default" gridClick="No default" gridDoubleClick="No default" gridItemEditorSessionCancel="No default" gridItemEditorSessionSave="No default" gridItemEditorSessionStart="No default" gridItemEditorSessionStarting="No default" gridMouseDown="No default" gridMouseDrag="No default" gridMouseUp="No default" gridMouseRollOut="No default" gridMouseRollOver="No default" selectionChange="No default" selectionChanging="No default" sortChange="No default" sortChanging="No default" />]]>
Элемент управления Spark DataGrid реализуется как оболочка с изменяемым оформлением для элемента управления Spark Grid. Элемент управления Grid определяет столбцы сетки данных и многие функциональные возможности самого элемента управления DataGrid.
Тема оформления DataGrid используется для размещения сетки, заголовка столбца и средства прокрутки. С помощью этой темы оформления также настраиваются графические элементы для отображения визуальных элементов, используемых как индикаторы, разделители или фоновые изображения. Тема оформления DataGrid также определяет средство визуализации элементов по умолчанию, используемое для отображения содержимого каждой ячейки. См. список поддерживаемых стилей в документации для класса средства визуализации.
Переходы в средствах визуализации элементов DataGrid не поддерживаются. В классе GridItemRenderer выключено свойство
В случае отмены этого события редактор элементов не будет создан.
Это событие отправляется при взаимодействии пользователя с элементом управления. Когда вы сортируете коллекцию поставщика данных с точки зрения программы, компонент не отправляется
У элемента управления DataGrid есть стандартный обработчик для этого события, которое внедряет вид вертикальной строки и обновляет
Для сортировки по нескольким столбцам вызовите метод
Это событие отправляется при взаимодействии пользователя с элементом управления. Когда вы сортируете коллекцию поставщика данных с точки зрения программы, компонент не отправляется
Это событие отправляется при взаимодействии пользователя с элементом управления. При изменении выбора программным способом компонент не отправляет событие
Это событие отправляется при взаимодействии пользователя с элементом управления. При изменении выбора программным способом компонент не отправляет событие
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Для обработки этого события следует назначить обработчик событий для компонента темы оформления
Если
Если
Класс flash.system.IMEConversionMode определяет константы для допустимых значений этого свойства. Можно также указать значение
Для получения доступа к экземпляру редактора элементов и новому значению элемента во время редактирования воспользуйтесь свойством
Свойство
Не устанавливайте это свойство в MXML.
<s:RadioButtonGroup>
tag inherits all of the
tag attributes of its superclass, and adds the following tag attributes:
<s:RadioButtonGroup Properties enabled="true" selectedValue="null" selection="null" Events change="No default" itemClick="No default" valueCommit="No default" />]]>
Обратите внимание, что компонент RadioButtonGroup является подклассом EventDispatcher, а не UIComponent, и реализует интерфейс IMXMLObject. Все остальные визуальные компоненты Flex реализуют интерфейс IVisualElement. Объявление компонента RadioButtonGroup должно содержаться в пределах тега
Чтобы использовать этот компонент в компоненте на основе списка, таком как List или DataGrid, следует создать средство визуализации элементов. Для получения информации о создании средства визуализации элементов см. раздел
Поскольку программное изменение инициирует это событие, убедитесь, что ни один обработчик события
В компоненте Flex при установке значения
<s:VScrollBar>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:VScrollBar Properties viewport="" />]]>
Элемент управления VScrollBar можно использовать автономно, однако обычно он используется как часть группы компонентов, обеспечивающих возможность прокрутки.
Элемент управления VScrollBar имеет следующие характеристики по умолчанию:
spark.skins.spark.VScrollBarThumbSkin
spark.skins.spark.VScrollBarTrackSkin
Поведением по умолчанию является вертикальная прокрутка в соответствии с количеством "шагов" в событии
Вызов метода
Если установлено свойство
Если
<s:VideoDisplay>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:VideoDisplay Properties autoDisplayFirstFrame="true" autoPlay="true" autoRewind="true" loop="false" muted="false" pauseWhenHidden="true" scaleMode="letterbox" source="" volume="1" Events bytesLoadedChange="No default" complete="No default" currentTimeChange="No default" durationChange="No default" mediaPlayerStateChange="No default" />]]>
Для элемента управления VideoDisplay по умолчанию установлены следующие характеристики:
Это событие невозможно отправить при значении источника, установленном на null, или при возникновении ошибки воспроизведения.
Это событие невозможно отправить при значении источника, установленном на null, или при возникновении ошибки воспроизведения.
Это событие невозможно отправить при значении источника, установленном на null, или при возникновении ошибки воспроизведения.
Для повторного запуска воспроизведения следует выполнить вызов метода
Если время меньше 0 или NaN, выдает исключение. Если время превышает окончание потока или продолжительность загруженного файла, то будет предпринята попытка перехода, а при неудачной попытке произойдет восстановление.
Свойство
Примечание. При потоковом воспроизведении переход осуществляется точно на указанное время, даже если исходный FLV-файл не имеет ключевых кадров.
Процесс перехода является асинхронным, т. е. при вызове метода
При
Даже если
Если для
Это свойство не влияет на живое потоковое видео.
При блокировании видеоролика (или одного из его вышестоящих узлов) видеоролик будет приостановлен, но при повторном включении видеоролика видео не будет воспроизводиться. Этот вариант поведения не управляется через
Возможно, видео в настоящее время не воспроизводится, а выполняется поиск или буферизация, но при этом происходит попытка воспроизведения.
Если не указаны ширина, высота или какие-либо ограничения для компонента, это свойство не оказывает влияния.
Для последовательной загрузки источником является путь или URL-адрес, указывающий на видеофайл для воспроизведения.
Для потокового видео (записанное потоковое видео, потоковое видео в реальном времени или видео с разной скоростью передачи) свойством источника является объект DynamicStreamingVideoSource. Если требуется воспроизвести записанный или потоковый видеоролик в реальном времени без поддержки множественной скорости передачи, можно передать URL-адрес строки, указывающий на видеопоток. Однако в этом случае тип streamType будет рассматриваться как any, и пользователь не сможет управлять потоком с такой же эффективностью, как при управлении объектом DynamicStreamingVideoSource.
Примечание. Не рекомендуется указывать в качестве источника MediaPlayerStateChangeEvent.LOADING или MediaPlayerStateChangeEvent.READY, если источник уже был установлен. Это может привести к появлению бесконечного цикла или ошибки времени выполнения. Если выполнение этой процедуры необходимо, дождитесь дополнительного фрейма для указания источника.
Если значение источника равно
<s:TileGroup>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:TileGroup Properties columnAlign="left" columnCount="-1" columnWidth="0" horizontalAlign="justify" horizontalGap="6" orientation="rows" paddingBottom="0" paddingLeft="0" paddingRight="0" paddingTop="0" requestedColumnCount"-1" requestedRowCount="-1" rowAlign="top" rowCount="-1" rowHeight="0" verticalAlign="justify" verticalGap="6" />]]>
Контейнер TileGroup имеет следующие характеристики по умолчанию: