Пакет | flash.text |
Класс | public class TextField |
Наследование | TextField InteractiveObject DisplayObject EventDispatcher Object |
Подклассы | FlexTextField |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Для динамического создания текстового поля используется конструктор метода TextField()
.
Методы класса TextField позволяют задавать, выделять текст и выполнять манипуляции с ним в динамическом текстовом поле или поле ввода, создаваемом при разработке программы или при исполнении.
ActionScript предусматривает несколько способов форматирования текста при исполнении. Класс TextFormat позволяет задавать форматирование символов и абзацев для объектов TextField. К текстовым полям можно применять стили CSS с помощью свойства TextField.styleSheet
и класса StyleSheet. Можно использовать CSS для изменения стиля встроенных тегов HTML, определения новых тегов форматирования или применения стилей. Текстовому полю можно напрямую назначить текст с форматированием HTML, который также может использовать стили CSS. HTML-текст, назначаемый текстовому полю, может содержать встроенное мультимедийное содержимое (фрагменты роликов, SWF-файлы, GIF-файлы, PNG-файлы и JPEG-файлы). Текст «обтекает» встроенное в него мультимедийное содержимое так же, как в документе HTML в обозревателе.
Проигрыватель Flash Player поддерживает подгруппу тегов HTML, которые можно использовать для форматирования текста. См. список поддерживаемых тегов HTML в описании свойства htmlText
.
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
Текущая реализация специальных возможностей (AccessibilityImplementation) для данного экземпляра InteractiveObject. | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
Текущие параметры специальных возможностей для данного экранного объекта. | DisplayObject | ||
alpha : Number
Указывает значение альфа-прозрачности заданного объекта. | DisplayObject | ||
alwaysShowSelection : Boolean
При значении true и отсутствии фокуса на текстовом поле проигрыватель Flash Player выделяет фрагмент в текстовом поле серым цветом. | TextField | ||
antiAliasType : String
Тип сглаживания, применяемый для данного текстового поля. | TextField | ||
autoSize : String
Управляет автоматической настройкой размеров и выравниванием текстовых полей. | TextField | ||
background : Boolean
Указывает, используется ли в текстовом поле фоновая заливка. | TextField | ||
backgroundColor : uint
Цвет фона текстового поля. | TextField | ||
blendMode : String
Значение класса BlendMode, задающее режим наложения. | DisplayObject | ||
blendShader : Shader [только для записи]
Задает затенение, используемое при наложении переднего плана на фон. | DisplayObject | ||
border : Boolean
Указывает, есть ли у текстового поля рамка. | TextField | ||
borderColor : uint
Цвет рамки текстового поля. | TextField | ||
bottomScrollV : int [только для чтения]
Целое число (индекс, отсчитываемый от 1), соответствующее самой нижней строке, которую видно в заданном текстовом поле. | TextField | ||
cacheAsBitmap : Boolean
При значении true среда выполнения Flash кэширует внутреннее растровое представление экранного объекта. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Если задано ненулевое значение, данный объект Matrix определяет способ визуализации экранного объекта, когда свойство cacheAsBitmap имеет значение true. | DisplayObject | ||
caretIndex : int [только для чтения]
Индекс точки вставки (каре). | TextField | ||
condenseWhite : Boolean
Логическое значение, определяющее, следует ли удалять лишние разделители (пробелы, разрывы строк и т.д.) в текстовом поле с текстом HTML. | TextField | ||
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
contextMenu : NativeMenu
Определяет контекстное меню, связанное с данным объектом. | InteractiveObject | ||
defaultTextFormat : flash.text:TextFormat
Определяет формат, применяемый к новому вставленному тексту, такому как тексту, введенному пользователем, или тексту, вставленному с использованием метода replaceSelectedText(). | TextField | ||
displayAsPassword : Boolean
Показывает, является ли текстовое поле полем пароля. | TextField | ||
doubleClickEnabled : Boolean
Определяет, получает ли объект события doubleClick. | InteractiveObject | ||
embedFonts : Boolean
Определяет, должна ли выполняться визуализация с использованием структур встроенных шрифтов. | TextField | ||
filters : Array
Индексированный массив, который содержит все объекты filter, связанные в настоящий момент с экранным объектом. | DisplayObject | ||
focusRect : Object
Задает отображение прямоугольной рамки индикатора фокуса для данного объекта. | InteractiveObject | ||
gridFitType : String
Тип подгонки к сетке, применяемый для этого текстового поля. | TextField | ||
height : Number
Указывает высоту экранного объекта в пикселях. | DisplayObject | ||
htmlText : String
Содержит HTML-представление содержимого текстового поля. | TextField | ||
length : int [только для чтения]
Число символов в текстовом поле. | TextField | ||
loaderInfo : LoaderInfo [только для чтения]
Возвращает объект LoaderInfo, содержащий сведения о загрузке файла, к которому принадлежит этот экранный объект. | DisplayObject | ||
mask : DisplayObject
Вызывающий экранный объект маскируется заданным объектом mask. | DisplayObject | ||
maxChars : int
Введенное пользователем максимальное число символов, которое может содержать текстовое поле. | TextField | ||
maxScrollH : int [только для чтения]
Максимальное значение scrollH. | TextField | ||
maxScrollV : int [только для чтения]
Максимальное значение scrollV. | TextField | ||
metaData : Object
Получает объект метаданных экземпляра DisplayObject, если метаданные хранились вместе с экземпляром этого DisplayObject в SWF-файле через тег PlaceObject4. | DisplayObject | ||
mouseEnabled : Boolean
Определяет, получает ли этот объект события мыши или другого пользовательского ввода. | InteractiveObject | ||
mouseWheelEnabled : Boolean
Логическое значение, определяющее, выполняет ли проигрыватель Flash Player автоматическую прокрутку многострочных текстовых полей, когда пользователь щелкает текстовое поле и вращает колесико мыши. | TextField | ||
mouseX : Number [только для чтения]
Указывает координату x мыши или курсора пользовательского ввода (в пикселях). | DisplayObject | ||
mouseY : Number [только для чтения]
Указывает координату y мыши или курсора пользовательского ввода (в пикселях). | DisplayObject | ||
multiline : Boolean
Показывает, является ли текстовое поле многострочным. | TextField | ||
name : String
Указывает имя экземпляра DisplayObject. | DisplayObject | ||
needsSoftKeyboard : Boolean
Определяет, должна ли отображаться виртуальная клавиатура (программная экранная клавиатура), когда этот экземпляр InteractiveObject получает фокус. | InteractiveObject | ||
numLines : int [только для чтения]
Определяет число строк текста в многострочном текстовом поле. | TextField | ||
opaqueBackground : Object
Определяет, является ли экранный объект непрозрачным с определенным цветом фона. | DisplayObject | ||
parent : DisplayObjectContainer [только для чтения]
Указывает объект DisplayObjectContainer, содержащий данный экранный объект. | DisplayObject | ||
restrict : String
Определяет набор символов, которые могут быть введены пользователем в текстовом поле. | TextField | ||
root : DisplayObject [только для чтения]
В случае с экранным объектом в загруженном SWF-файле свойством root является самый верхний экранный объект в части структуры дерева списка отображения, представленной этим SWF-файлом. | DisplayObject | ||
rotation : Number
Указывает поворот экземпляра DisplayObject относительно его исходной ориентации (в градусах). | DisplayObject | ||
rotationX : Number
Обозначает поворот в градусах по оси x экземпляра DisplayObject относительно исходной ориентации по трехмерному вышестоящему контейнеру. | DisplayObject | ||
rotationY : Number
Обозначает угол поворота в градусах по оси у экземпляра DisplayObject относительно исходной ориентации по трехмерному родительскому контейнеру. | DisplayObject | ||
rotationZ : Number
Обозначает поворот в градусах по оси z экземпляра DisplayObject от исходной ориентации относительно трехмерного родительского контейнера. | DisplayObject | ||
scale9Grid : Rectangle
Текущая активная сетка масштабирования. | DisplayObject | ||
scaleX : Number
Указывает горизонтальное масштабирование объекта от точки регистрации (в процентах). | DisplayObject | ||
scaleY : Number
Указывает вертикальное масштабирование объекта от точки регистрации (в процентах). | DisplayObject | ||
scaleZ : Number
Указывает глубину масштабирования объекта (в процентах) относительно точки регистрации этого объекта. | DisplayObject | ||
scrollH : int
Текущее положение горизонтальной прокрутки. | TextField | ||
scrollRect : Rectangle
Прямоугольная область прокрутки экранного объекта. | DisplayObject | ||
scrollV : int
Вертикальное положение текста в текстовом поле. | TextField | ||
selectable : Boolean
Логическое значение, определяющее, можно ли выбрать текстовое поле. | TextField | ||
selectionBeginIndex : int [только для чтения]
Отсчитываемое от нуля значение индекса для первого символа в текущем выделенном фрагменте. | TextField | ||
selectionEndIndex : int [только для чтения]
Отсчитываемое от нуля значение индекса для последнего символа в текущем выделенном фрагменте. | TextField | ||
sharpness : Number
Четкость контуров символов в этом текстовом поле. | TextField | ||
softKeyboard : String
Управляет внешним видом программной клавиатуры. | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Определяет область, которая должна оставаться на экране при отображении программной клавиатуры (недоступна в iOS). | InteractiveObject | ||
stage : Stage [только для чтения]
Класс Stage экранного объекта. | DisplayObject | ||
styleSheet : StyleSheet
Присоединяет таблицу стилей к текстовому полю. | TextField | ||
tabEnabled : Boolean
Определяет, включен ли переход к этому объекту с помощью клавиши Tab. | InteractiveObject | ||
tabIndex : int
Задает последовательность перехода между объектами в SWF-файле. | InteractiveObject | ||
text : String
Строка, представляющая текущий текст в текстовом поле. | TextField | ||
textColor : uint
Цвет текста в текстовом поле (в шестнадцатеричном формате). | TextField | ||
textHeight : Number [только для чтения]
Высота текста в пикселях. | TextField | ||
textInteractionMode : String [только для чтения]
Свойства режима взаимодействия, Значение по умолчанию - TextInteractionMode. НОРМАЛЬНЫЙ. | TextField | ||
textWidth : Number [только для чтения]
Ширина текста в пикселях. | TextField | ||
thickness : Number
Толщина контуров символов в данном текстовом поле. | TextField | ||
transform : flash.geom:Transform
Объект со свойствами, относящимися к матрице, преобразованию цвета и пиксельным границам экранного объекта. | DisplayObject | ||
type : String
Тип текстового поля. | TextField | ||
useRichTextClipboard : Boolean
Определяет, будет ли форматирование текста копироваться и вставляться вместе с самим текстом. | TextField | ||
visible : Boolean
Определяет видимость экранного объекта. | DisplayObject | ||
width : Number
Указывает ширину экранного объекта в пикселях. | DisplayObject | ||
wordWrap : Boolean
Логическое значение, определяющее применение переноса по словам к текстовому полю. | TextField | ||
x : Number
Указывает координату x экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. | DisplayObject | ||
y : Number
Указывает координату y экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. | DisplayObject | ||
z : Number
Указывает положение по оси z экземпляра DisplayObject относительно трехмерного родительского контейнера. | DisplayObject |
Метод | Определено | ||
---|---|---|---|
Создает новый экземпляр TextField. | TextField | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | ||
Добавляет строку, указанную параметром newText, в конец текста в текстовом поле. | TextField | ||
Посылает событие в поток событий. | EventDispatcher | ||
Возвращает прямоугольник, определяющий область объекта отображения, которая относится к системе координат объекта targetCoordinateSpace. | DisplayObject | ||
Возвращает прямоугольник, который является ограничительным блоком символа. | TextField | ||
Возвращает значение индекса, отсчитываемое от нуля, для символа в точке, определенной параметрами x и y. | TextField | ||
Получив индекс символа, возвращает индекс первого символа в том же абзаце. | TextField | ||
Возвращает ссылку DisplayObject для данного идентификатора, изображения или SWF-файла, добавленного в текстовое поле с форматированием HTML с помощью тега <img>. | TextField | ||
Возвращает значение индекса, отсчитываемое от нуля, для строки в точке с координатами x и y. | TextField | ||
Отсчитываемое от нуля значение индекса для строки, которая содержит символ, заданный параметром charIndex. | TextField | ||
Возвращает число символов в заданной строке текста. | TextField | ||
Возвращает данные метрик для заданной строки текста. | TextField | ||
Возвращает индекс первого символа в строке, заданной параметром lineIndex. | TextField | ||
Возвращает текст строки, заданной параметром lineIndex. | TextField | ||
Используя полученный индекс символа, возвращает длину абзаца, содержащего этот символ. | TextField | ||
Возвращает прямоугольник, определяющий границу объекта отображения по системе координат, определенной параметром targetCoordinateSpace за исключением линий фигур. | DisplayObject | ||
Возвращает объект TextFormat, содержащий данные о форматировании для фрагмента текста, заданного параметрами beginIndex и endIndex. | TextField | ||
Преобразует объект Point из координат рабочей области (глобальных) в координаты отображаемого объекта (локальные). | DisplayObject | ||
Преобразует двумерный объект Point из координат рабочей области (глобальных) в координаты экранного трехмерного объекта (локальные). | DisplayObject | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Вычисляет ограничительную рамку экранного объекта, чтобы определить, не перекрывает и не пересекает ли она ограничительную рамку экранного объекта obj. | DisplayObject | ||
Вычисляет экранный объект, чтобы определить, перекрывает ли он точку, заданную координатами x и y, или пересекает ее. | DisplayObject | ||
[статические]
Возвращает значение true, если доступен встроенный шрифт с указанными свойствами fontName и fontStyle, где Font.fontType — это flash.text.FontType.EMBEDDED. | TextField | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Преобразует трехмерный объект point из координат трехмерного экранного объекта (локальных) в двухмерный объект point с координатами рабочей области (глобальными). | DisplayObject | ||
Преобразует объект Point из координат экранного объекта (локальных) в координаты рабочей области (глобальные). | DisplayObject | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | ||
Заменяет текущий выделенный фрагмент содержимым параметра value. | TextField | ||
Заменяет диапазон символов, заданный параметрами beginIndex и endIndex, содержанием параметра newText. | TextField | ||
Вызывает виртуальную клавиатуру. | InteractiveObject | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Задает способ разметки текста с помощью индексов первого и последнего символов, которые указываются параметрами beginIndex и endIndex | TextField | ||
Применяет форматирование текста, заданное параметром format, к указанному содержимому текстового поля. | TextField | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher |
Событие | Сводка | Определено | ||
---|---|---|---|---|
[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным. | EventDispatcher | |||
Отправляется, когда экранный объект добавляется в список отображения. | DisplayObject | |||
Отправляется, когда экранный объект добавляется к списку отображения на монтажном столе либо непосредственно, либо путем добавления поддерева, содержащего экранный объект. | DisplayObject | |||
Отправляется после изменения значения элемента управления, в отличие от события textInput, которое отправляется перед изменением значения. | TextField | |||
Отправляется, когда пользователь выбирает команду «Удалить» из контекстного меню текста. | InteractiveObject | |||
Отправляется, когда пользователь нажимает и отпускает главную кнопку на указывающем устройстве над одним и тем же объектом InteractiveObject. | InteractiveObject | |||
Отправляется, когда жест пользователя вызывает контекстное меню, связанное с данным интерактивным объектом в приложении AIR. | InteractiveObject | |||
Отправляется, когда пользователь активирует комбинацию клавиш быстрого вызова, используемую на данной платформе для операции «Копировать», или выбирает команду «Копировать» из контекстного меню. | InteractiveObject | |||
Отправляется, когда пользователь активирует комбинацию клавиш быстрого вызова, используемую на данной платформе для операции «Вырезать», или выбирает команду «Вырезать» из контекстного меню. | InteractiveObject | |||
[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR теряет фокус системы и становится неактивным. | EventDispatcher | |||
Отправляется, когда пользователь дважды нажимает и отпускает главную кнопку на указывающем устройстве над одним и тем же объектом InteractiveObject, а флаг doubleClickEnabled для этого объекта имеет значение true. | InteractiveObject | |||
[многоадресное событие] Отправляется, когда точка воспроизведения переходит в новый кадр. | DisplayObject | |||
[многоадресное событие] Отправляется, когда точка воспроизведения покидает текущий кадр. | DisplayObject | |||
Отправляется после того, как экранный объект перемещается в фокус. | InteractiveObject | |||
Отправляется после того, как экранный объект теряет фокус. | InteractiveObject | |||
[многоадресное событие] Отправляется после завершения работы конструкторов экранных объектов кадра до выполнения сценариев кадра. | DisplayObject | |||
Отправляется, когда пользователь создает точку контакта вдоль края сенсорной поверхности с помощью экземпляра InteractiveObject (например, нажатие по краю сенсорной поверхности на пульте Siri Remote для Apple TV). Некоторые устройства также могут интерпретировать этот контакт как комбинацию нескольких событий касания. | InteractiveObject | |||
Отправляется, когда пользователь наживает две точки контакта над одним экземпляром InteractiveObject на устройстве с сенсорным экраном (например, двумя пальцами нажимает точки над экранным объектом и отпускает их при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь перемещает точку контакта с экземпляром InteractiveObject на устройстве с сенсорным экраном (например, касается пальцем и проводит им слева направо над экранным объектом при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь выполняет жест поворота в точке контакта с экземпляром InteractiveObject (например, касание двумя пальцами и их вращение над экранным объектом при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь выполняет жест выделения в точке контакта с экземпляром InteractiveObject (например, касание экрана тремя пальцами и их параллельное перемещение над экранным объектом при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь создает точку контакта с экземпляром InteractiveObject, а затем касается сенсорного экрана (например, касается экранного объекта несколькими пальцами, чтобы открыть меню, а затем касается одним пальцем для выбора нужного элемента меню при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь выполняет жест увеличения в точке контакта с экземпляром InteractiveObject (например, касание экрана двумя пальцами и их быстрое разведение в стороны над экранным объектом при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Это событие отправляется любой клиентской программе, которая поддерживает линейный ввод с помощью IME. | InteractiveObject | |||
Отправляется, когда пользователь нажимает клавишу. | InteractiveObject | |||
Отправляется, когда пользователь пытается изменить фокус с помощью клавиатуры. | InteractiveObject | |||
Отправляется, когда пользователь отпускает клавишу. | InteractiveObject | |||
Передается, когда пользователь щелкает в текстовом поле с поддержкой HTML гиперссылку, в которой URL-адрес начинается с event:. | TextField | |||
Отправляется, когда пользователь нажимает и отпускает среднюю кнопку указывающего устройства над одним и тем же объектом InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь нажимает среднюю кнопку указывающего устройства над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь отпускает кнопку указывающего устройства над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь нажимает кнопку указывающего устройства над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь пытается изменить фокус с помощью указывающего устройства. | InteractiveObject | |||
Отправляется, когда пользователь перемещает указывающее устройство в момент, когда курсор находится над объектом InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь перемещает указатель с экземпляра InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь наводит указывающее устройство на экземпляр InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь отпускает кнопку указывающего устройства над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется при прокрутке колеса мыши над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется инициатором перетаскивания InteractiveObject, когда пользователь завершает жест перетаскивания. | InteractiveObject | |||
Отправляется целевым объектом InteractiveObject при принятии перетаскиваемого объекта вызовом метода DragManager.acceptDragDrop(). | InteractiveObject | |||
Отправляется объектом InteractiveObject, когда жест перетаскивания входит в его границы. | InteractiveObject | |||
Отправляется объектом InteractiveObject, когда жест перетаскивания выходит за границы этого объекта. | InteractiveObject | |||
Постоянно отправляется объектом InteractiveObject, пока жест перетаскивания остается в пределах его границ. | InteractiveObject | |||
Отправляется в начале операции перетаскивания объектом InteractiveObject, заданным в качестве инициатора перетаскивания в вызове метода DragManager.doDrag(). | InteractiveObject | |||
Отправляется во время операции перетаскивания объектом InteractiveObject, заданным в качестве инициатора перетаскивания в вызове метода DragManager.doDrag(). | InteractiveObject | |||
Отправляется, когда пользователь активирует комбинацию клавиш ускорения, используемую на данной платформе для операции «Вставить», или выбирает команду «Вставить» из контекстного меню. | InteractiveObject | |||
Отправляется, когда пользователь опускает активное перо ниже установленного для экрана порога обнаружения приближения. | InteractiveObject | |||
Отправляется, когда пользователь поднимает активное перо, превышая установленный для экрана порог обнаружения приближения. | InteractiveObject | |||
Отправляется, когда пользователь наводит активное перо на экран, не превышая установленный для экрана порог обнаружения приближения. | InteractiveObject | |||
Отправляется, когда пользователь переводит активное перо от этого объекта InteractiveObject, не превышая установленный для экрана порог обнаружения приближения. | InteractiveObject | |||
Отправляется, когда пользователь наводит активное перо непосредственно на этот объект InteractiveObject, не превышая установленный для экрана порог обнаружения приближения. | InteractiveObject | |||
Отправляется, когда пользователь перемещает активное перо от этого объекта InteractiveObject и любого из его дочерних объектов, не превышая установленный для экрана порог обнаружения приближения. | InteractiveObject | |||
Отправляется, когда пользователь переводит активное перо на этот объект InteractiveObject из внешней части дерева потомков в списке отображения (не превышая установленный для экрана порог обнаружения близости). | InteractiveObject | |||
Отправляется, когда пользователь отпускает кнопку позиционирующего устройства после ее нажатия над экземпляром InteractiveObject и последующего перемещения позиционирующего устройства с экземпляра InteractiveObject. | InteractiveObject | |||
Отправляется перед удалением экранного объекта из списка отображения. | DisplayObject | |||
Отправляется перед удалением экранного объекта из списка отображения либо напрямую, либо путем удаления поддерева, содержащего экранный объект. | DisplayObject | |||
[многоадресное событие] Отправляется перед обновлением и визуализацией списка отображения. | DisplayObject | |||
Отправляется, когда пользователь нажимает и отпускает правую кнопку указывающего устройства над одним и тем же объектом InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь нажимает кнопку указывающего устройства над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь отпускает кнопку указывающего устройства над экземпляром InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь перемещает указатель с экземпляра InteractiveObject. | InteractiveObject | |||
Отправляется, когда пользователь наводит указывающее устройство на экземпляр InteractiveObject. | InteractiveObject | |||
Отправляется объектом TextField, когда пользователь выполняет прокрутку. | TextField | |||
Отправляется, когда пользователь активирует комбинацию клавиш ускорения, используемую на данной платформе для операции «Выделить все», или выбирает команду «Выделить все» из контекстного меню. | InteractiveObject | |||
Отправляется сразу после того, как программная клавиатура вызывается. | InteractiveObject | |||
Передается немедленно перед тем, как программная клавиатура появляется на экране. | InteractiveObject | |||
Передается немедленно после того, как программная клавиатура убирается с экрана. | InteractiveObject | |||
Отправляется, когда изменяется значение свойства tabChildren объекта. | InteractiveObject | |||
Отправляется при изменении флага tabEnabled объекта. | InteractiveObject | |||
Отправляется, когда изменяется значение свойства tabIndex объекта. | InteractiveObject | |||
Flash Player отправляет событие textInput, когда пользователь вводит один или несколько символов текста. | TextField | |||
Flash Player отправляет textInteractionModeChange событие когда смены пользователя режим взаимодействия текстового поля. | TextField | |||
Отправляется, когда пользователь впервые создает точку контакта с сенсорным экраном устройства (например, касается сенсорного экрана мобильного телефона или планшетного компьютера). | InteractiveObject | |||
Отправляется, когда пользователь убирает точку контакта с сенсорным экраном устройства (например, поднимает палец с сенсорного экрана мобильного телефона или планшетного компьютера). | InteractiveObject | |||
Отправляется, когда пользователь касается устройства, и продолжает отправляться до тех пор, пока точка контакта не будет удалена. | InteractiveObject | |||
Отправляется, когда пользователь перемещает точку контакта от экземпляра InteractiveObject на устройстве с сенсорным экраном (например, перетаскивает палец с одного экранного объекта на другой при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь перемещает точку контакта над экземпляром InteractiveObject на устройстве с сенсорным экраном (например, перетаскивает палец с точки за пределами экранного объекта в точку над ним при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь удаляет точку контакта из экземпляра InteractiveObject на сенсорном устройстве (например, переводит палец из положения над экранным объектом в точку за пределами экранного объекта на мобильном телефоне или планшете с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь перемещает точку контакта над экземпляром InteractiveObject на устройстве с сенсорным экраном (например, перетаскивает палец с точки за пределами экранного объекта в точку над ним при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject | |||
Отправляется, когда пользователь поднимает точку контакта над тем же экземпляром InteractiveObject, с которым был установлен первичный контакт на сенсорном экране (например, нажимает точку на экранном объекте и поднимает палец с той же точки при использовании мобильного телефона или планшетного компьютера с сенсорным экраном). | InteractiveObject |
alwaysShowSelection | свойство |
alwaysShowSelection:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
При значении true
и отсутствии фокуса на текстовом поле проигрыватель Flash Player выделяет фрагмент в текстовом поле серым цветом. При значении false
и отсутствии фокуса на текстовом поле проигрыватель Flash Player не выделяет фрагмент в текстовом поле.
Значением по умолчанию является false.
Реализация
public function get alwaysShowSelection():Boolean
public function set alwaysShowSelection(value:Boolean):void
Связанные элементы API
Пример ( Использование этого примера )
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; public class TextField_alwaysShowSelection extends Sprite { public function TextField_alwaysShowSelection() { var label1:TextField = createCustomTextField(0, 20, 200, 20); label1.text = "This text is selected."; label1.setSelection(0, 9); label1.alwaysShowSelection = true; var label2:TextField = createCustomTextField(0, 50, 200, 20); label2.text = "Drag to select some of this text."; } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
antiAliasType | свойство |
antiAliasType:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Тип сглаживания, применяемый для данного текстового поля. Используйте константы flash.text.AntiAliasType
для этого свойства. Этим параметром можно управлять, только если используется встроенный шрифт (свойство embedFonts
имеет значение true
). Параметр по умолчанию — flash.text.AntiAliasType.NORMAL
.
В качестве значений этого свойства используйте следующие строковые значения:
Строковое значение | Описание |
---|---|
flash.text.AntiAliasType.NORMAL | Применяет обычное сглаживание текста. Значение соответствует типу сглаживания, который использовался в проигрывателе Flash Player 7 и более ранних версиях. |
flash.text.AntiAliasType.ADVANCED | Применяет расширенное сглаживание, которое делает текст более четким. (Эта функция стала доступной в проигрывателе Flash Player 8.) Расширенное сглаживание обеспечивает высококачественную визуализацию шрифтов мелкого размера. Оно оптимально для приложений с большим объемом мелкого текста. Расширенное сглаживание не рекомендуется для шрифтов больше 48 размера. |
Реализация
public function get antiAliasType():String
public function set antiAliasType(value:String):void
Связанные элементы API
autoSize | свойство |
autoSize:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Управляет автоматической настройкой размеров и выравниванием текстовых полей. Допустимые значения констант TextFieldAutoSize
: TextFieldAutoSize.NONE
(по умолчанию), TextFieldAutoSize.LEFT
, TextFieldAutoSize.RIGHT
и TextFieldAutoSize.CENTER
.
Если autoSize
имеет значение TextFieldAutoSize.NONE
(по умолчанию) размер не изменяется.
Если autoSize
имеет значение TextFieldAutoSize.LEFT
, тексту задается выравнивание по левому краю, то есть левое поле текста остается неподвижным и изменение размера одной строки текстового поля осуществляется по правому полю. Если в тексте встречается разрыв строки (например, \n
или \r
), размер нижнего края также изменяется, чтобы вместить следующую строку текста. Если свойство wordWrap
также имеет значение true
, размер текстового поля изменяется только по нижнему краю, а правый край остается фиксированным.
Если autoSize
имеет значение TextFieldAutoSize.RIGHT
, тексту задается выравнивание по правому краю, то есть правое поле текста остается неподвижным и изменение размера одной строки текстового поля осуществляется по левому полю. Если в тексте встречается разрыв строки (например, \n или \r
), размер нижнего края также изменяется, чтобы вместить следующую строку текста. Если свойство wordWrap
также имеет значение true
, размер текстового поля изменяется только по нижнему краю, а левый край остается фиксированным.
Если autoSize
имеет значение TextFieldAutoSize.CENTER
, текст обрабатывается с учетом выравнивания по центру, то есть изменение размера одной строки текстового поля равномерно распределяется по правому и левому полям. Если в тексте встречается разрыв строки (например, \n
или \r
), размер нижнего края также изменяется, чтобы вместить следующую строку текста. Если свойство wordWrap
также имеет значение true
, размер текстового поля изменяется только по нижнему краю, а левый и правый края остаются фиксированными.
Реализация
public function get autoSize():String
public function set autoSize(value:String):void
Выдает
ArgumentError — Заданный параметр autoSize не является элементом flash.text.TextFieldAutoSize.
|
Связанные элементы API
background | свойство |
background:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Указывает, используется ли в текстовом поле фоновая заливка. При значении true
фоновая заливка текстового поля используется. При значении false
фоновая заливка текстового поля не используется. Цвет фона для текстового поля задается с помощью свойства backgroundColor
.
Значением по умолчанию является false.
Реализация
public function get background():Boolean
public function set background(value:Boolean):void
Связанные элементы API
backgroundColor | свойство |
backgroundColor:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Цвет фона текстового поля. Значение по умолчанию — 0xFFFFFF
(белый). Это свойство можно получить или задать, даже если в настоящее время фона нет, однако цвет будет видимым, только если свойству background
текстового поля задано значение true
.
Реализация
public function get backgroundColor():uint
public function set backgroundColor(value:uint):void
Связанные элементы API
border | свойство |
border:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Указывает, есть ли у текстового поля рамка. При значении true
текстовое поле имеет рамку. При значении false
текстовое поле не имеет рамки. Цвет рамки задается с помощью свойства borderColor
.
Значением по умолчанию является false.
Реализация
public function get border():Boolean
public function set border(value:Boolean):void
Связанные элементы API
borderColor | свойство |
borderColor:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Цвет рамки текстового поля. Значение по умолчанию — 0x000000
(черный). Это свойство можно получить или задать, даже если в настоящее время рамки нет, однако цвет будет видимым, только если свойству border
текстового поля задано значение true
.
Реализация
public function get borderColor():uint
public function set borderColor(value:uint):void
Связанные элементы API
bottomScrollV | свойство |
bottomScrollV:int
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Целое число (индекс, отсчитываемый от 1), соответствующее самой нижней строке, которую видно в заданном текстовом поле. Представьте, что текстовое поле — это окно на блоке текста. Свойство scrollV
представляет собой отсчитываемый от единицы индекс самой верхней видимой строки в окне.
Весь текст между линиями, заданными параметрами scrollV
и bottomScrollV
в данный момент отображается в текстовом поле.
Реализация
public function get bottomScrollV():int
Связанные элементы API
caretIndex | свойство |
caretIndex:int
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Индекс точки вставки (каре). Если точка вставки не отображается, значением является положение, которое она бы занимала, если бы поле было в фокусе (обычно это последнее место вставки или 0, если поле не было в фокусе).
Индексы выделенного фрагмента отсчитываются от нуля (например, первая позиция — 0, вторая — 1 и т. д.).
Реализация
public function get caretIndex():int
Связанные элементы API
Пример ( Использование этого примера )
printCursorPosition
. В данном случае значения свойств caretIndex
, selectionBeginIndex
и selectionEndIndex
выводятся на экран.
Запустите этот пример и попробуйте щелкнуть мышью в текстовом поле TextField, чтобы выделить текст. После этого щелкните поле, не выделяя текст. При щелчке по тексту без выделения, свойство caretIndex
указывает местоположение точки вставки, а свойства selectionBeginIndex
и selectionEndIndex
имеют то же значение, что caretIndex
.
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.text.TextFieldType; public class TextField_caretIndex extends Sprite { public function TextField_caretIndex() { var tf:TextField = createCustomTextField(10, 10, 100, 100); tf.wordWrap = true; tf.type = TextFieldType.INPUT; tf.text = "Click in this text field. Compare the difference between clicking without selecting versus clicking and selecting text."; tf.addEventListener(MouseEvent.CLICK, printCursorPosition); } private function printCursorPosition(event:MouseEvent):void { var tf:TextField = TextField(event.target); trace("caretIndex:", tf.caretIndex); trace("selectionBeginIndex:", tf.selectionBeginIndex); trace("selectionEndIndex:", tf.selectionEndIndex); } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
condenseWhite | свойство |
condenseWhite:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Логическое значение, определяющее, следует ли удалять лишние разделители (пробелы, разрывы строк и т.д.) в текстовом поле с текстом HTML. Значение по умолчанию false
. Свойство condenseWhite
влияет только на текст, определенный с помощью свойства htmlText
, а не с помощью свойства text
. Если текст определен посредством свойства text
, condenseWhite
игнорируется.
Если свойству condenseWhite
присваивается значение true
, необходимо использовать стандартные команды HTML (например, <BR>
и <P>
), чтобы поместить в текстовое поле разрывы строк.
Свойство condenseWhite
задается перед свойством htmlText
.
Реализация
public function get condenseWhite():Boolean
public function set condenseWhite(value:Boolean):void
Связанные элементы API
Пример ( Использование этого примера )
condenseWhite
в значении false
и в значении true
.
package { import flash.display.Sprite; import flash.text.TextField; public class TextField_condenseWhite extends Sprite { public function TextField_condenseWhite() { var tf1:TextField = createCustomTextField(0, 0, 200, 50); tf1.condenseWhite = false; tf1.htmlText = "keep on\n\ttruckin'"; var tf2:TextField = createCustomTextField(0, 120, 200, 50); tf2.condenseWhite = true; tf2.htmlText = "keep on\n\ttruckin'"; } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; result.border = true; addChild(result); return result; } } }
defaultTextFormat | свойство |
defaultTextFormat:flash.text:TextFormat
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Определяет формат, применяемый к новому вставленному тексту, такому как тексту, введенному пользователем, или тексту, вставленному с использованием метода replaceSelectedText()
.
Примечание. При выборе символов, которые будут заменены с помощью методов setSelection()
и replaceSelectedText()
, свойство defaultTextFormat
будет применено, только если текст был выделен полностью, включая последний символ. Далее приводится пример:
var my_txt:TextField new TextField(); my_txt.text = "Flash Macintosh version"; var my_fmt:TextFormat = new TextFormat(); my_fmt.color = 0xFF0000; my_txt.defaultTextFormat = my_fmt; my_txt.setSelection(6,15); // partial text selected - defaultTextFormat not applied my_txt.setSelection(6,23); // text selected to end - defaultTextFormat applied my_txt.replaceSelectedText("Windows version");
При обращении к свойству defaultTextFormat
возвращается объект TextFormat, все свойства которого определены. Ни одно из свойств не имеет значения null
.
Примечание. Это свойство невозможно задать, если к текстовому полю применена таблица стилей.
Реализация
public function get defaultTextFormat():flash.text:TextFormat
public function set defaultTextFormat(value:flash.text:TextFormat):void
Выдает
Error — Этот метод невозможно использовать для текстового поля с таблицей стилей.
|
Связанные элементы API
displayAsPassword | свойство |
displayAsPassword:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Показывает, является ли текстовое поле полем пароля. Если это свойство имеет значение true
, текстовое поле обрабатывается как поле ввода пароля и скрывает вводимые символы, показывая звездочки вместо действительных символов. При значении false
текстовое поле не обрабатывается как поле пароля. В режиме пароля команды «Вырезать» и «Копировать», а также соответствующие им комбинации клавиш не работают. Этот механизм защиты не позволяет недобросовестным пользователям использовать комбинации клавиш с целью получения пароля на компьютере, оставленном без присмотра.
Значением по умолчанию является false.
Реализация
public function get displayAsPassword():Boolean
public function set displayAsPassword(value:Boolean):void
embedFonts | свойство |
embedFonts:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Определяет, должна ли выполняться визуализация с использованием структур встроенных шрифтов. При значении false
проигрыватель Flash Player визуализирует текстовое поле с использованием шрифтов устройства.
Если свойству embedFonts
текстового поля задано значение true
, необходимо указать для текста шрифт с помощью свойства font
объекта TextFormat, примененного к текстовому полю. Если указанный шрифт не встроен в SWF-файл, текст не отображается.
Значением по умолчанию является false.
Реализация
public function get embedFonts():Boolean
public function set embedFonts(value:Boolean):void
Связанные элементы API
gridFitType | свойство |
gridFitType:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Тип подгонки к сетке, применяемый для этого текстового поля. Это свойство применяется, только если свойство flash.text.AntiAliasType
текстового поля имеет значение flash.text.AntiAliasType.ADVANCED
.
Используемый тип подгонки к сетке определяет, подгоняет ли проигрыватель Flash Player жирные горизонтальные или вертикальные линии к пиксельной или субпиксельной сетке, или совсем не выполняет подгонку.
Для свойства flash.text.GridFitType
можно использовать следующие строковые значения.
Строковое значение | Описание |
---|---|
flash.text.GridFitType.NONE | Задает отсутствие подгонки к сетке. Горизонтальные и вертикальные линии в глифах не подгоняются к пиксельной сетке. Этот параметр рекомендуется для анимации или для шрифтов большого размера. |
flash.text.GridFitType.PIXEL | Задает подгонку жирных горизонтальных и вертикальных линий к пиксельной сетке. Этот параметр применяется только к текстовым полям с выравниванием по левому краю. Для использования этого параметра свойство flash.display.AntiAliasType текстового поля должно иметь значение flash.text.AntiAliasType.ADVANCED . Этот параметр, как правило, дает максимальную четкость для текста с выравниванием по левому краю. |
flash.text.GridFitType.SUBPIXEL | Задает подгонку горизонтальных и вертикальных линий к субпиксельной сетке на ЖК-мониторе. Для использования этого параметра свойство flash.text.AntiAliasType текстового поля должно иметь значение flash.text.AntiAliasType.ADVANCED . Параметр flash.text.GridFitType.SUBPIXEL обычно целесообразен для динамического текста с выравниванием по правому краю или по центру и в некоторых случаях позволяет найти оптимальный баланс качеством анимации и текста. |
Значением по умолчанию является pixel.
Реализация
public function get gridFitType():String
public function set gridFitType(value:String):void
Связанные элементы API
Пример ( Использование этого примера )
gridFitType
. При тестировании этого примера, оцените разницу в четкости первых двух строк. Также обратите внимание на оптимальное использование GridFitType.PIXEL
для текста с выравниванием по левому краю и GridFitType.SUBPIXEL
для текста с выравниванием по правому краю.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFormat; import flash.text.TextFieldAutoSize; import flash.text.AntiAliasType; import flash.text.GridFitType; public class gridFitTypeExample extends Sprite { public function gridFitTypeExample() { var format1:TextFormat = new TextFormat(); format1.font="Arial"; format1.size=12; var tf1:TextField = createCustomTextField(0,0,format1,"NONE",TextFieldAutoSize.LEFT,GridFitType.NONE); var tf2:TextField = createCustomTextField(0,30,format1,"PIXEL",TextFieldAutoSize.LEFT,GridFitType.PIXEL); var tf3:TextField = createCustomTextField(300,60,format1,"SUBPIXEL",TextFieldAutoSize.RIGHT,GridFitType.SUBPIXEL); } private function createCustomTextField(x:Number,y:Number,fm:TextFormat,tl:String,tfs:String,gft:String):TextField { var result:TextField = new TextField(); result.x=x; result.y=y; result.embedFonts=true; result.antiAliasType=AntiAliasType.ADVANCED; result.text="This text uses a gridFitType of " + tl; result.autoSize=tfs; result.gridFitType=gft; result.setTextFormat(fm); addChild(result); return result; } } }
htmlText | свойство |
htmlText:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Содержит HTML-представление содержимого текстового поля.
Проигрыватель Flash Player поддерживает следующие теги HTML.
Тег | Описание |
---|---|
Тег привязки |
Тег <a> создает гипертекстовую ссылку и поддерживает следующие атрибуты.
|
Тег полужирного начертания |
Тег <b> изменяет начертание текста на полужирное. Для используемого шрифта должно быть доступно полужирное написание.
|
Тег разрыва |
Тег <br> создает разрыв строки в текстовом поле. Чтобы использовать этот тег, определите текстовое поле как многострочное.
|
Тег шрифта |
Тег <font> задает шрифт или список шрифтов для отображения текста. Тег шрифта поддерживает следующие атрибуты.
|
Тег изображения |
Тег <img> позволяет встраивать в текстовые поля внешние файлы изображений (JPEG, GIF, PNG), SWF-файлы и фрагменты роликов. Текст автоматически обтекает изображения, встроенные в текстовые поля. Необходимо определить текстовое поле как многострочное, чтобы текст обтекал изображение.
Тег
В текстовом поле проигрыватель Flash Player отображает встроенное мультимедийное содержимое в полном размере. Чтобы задать размеры встраиваемого мультимедийного содержимого, используйте атрибуты Как правило, изображение, встроенное в текстовое поле отображается на следующей строке после тега В отношении содержимого AIR в изолированной программной среде безопасности приложения AIR игнорирует теги |
Тег курсива |
Тег <i> отображает заключенный в него текст курсивом. Для используемого шрифта должно быть доступно курсивное начертание.
|
Тег элемента списка |
Тег <li> помещает маркер перед заключенным в него текстом. Примечание. Так как приложение Flash Player и AIR не распознают теги упорядоченного и неупорядоченного списка (<ol> и <ul> ), они не модифицируют визуализацию списка. Все списки являются неупорядоченными, и для всех элементов списка используются маркеры.
|
Тег абзаца |
Тег <p> создает новый абзац. Чтобы использовать этот тег, необходимо определить текстовое поле как многострочное. Тег <p> поддерживает следующие атрибуты.
|
Тег диапазона |
Тег <span> доступен только при использовании вместе со стилями текста CSS. Он поддерживает следующий атрибут.
|
Тег формата текста |
Тег Тег
|
Тег подчеркивания |
Тег <u> подчеркивает заключенный в него текст.
|
Flash Player и AIR поддерживают следующие HTML-сущности:
Сущность | Описание |
---|---|
< | < (знак меньше) |
> | > (знак больше) |
& | & (ampersand) |
" | " (двойные кавычки) |
' | ' (апостроф, одинарная кавычка) |
Flash Player и AIR поддерживают явные коды символов, например, & (амперсанд ASCII) и € (символ € в Юникод).
Реализация
public function get htmlText():String
public function set htmlText(value:String):void
Связанные элементы API
Пример ( Использование этого примера )
tf1
, свойству text
которого назначается строка в формате HTML. Когда отслеживается его свойство htmlText
, выводится строка в формате HTML, к которой проигрыватель Flash Player автоматически добавляет дополнительные теги, например <P> и <FONT>. Когда отслеживается значение свойства text
, отображается неотформатированная строка без тегов HTML.
По аналогии, эти же действия выполняются с другим объектом TextField с именем tf2
, но свойству styleSheet
поля tf2
назначается объект StyleSheet, прежде чем задается свойство htmlText
. В этом случае, когда отслеживается свойство htmlText
, оно включает только тот текст HTML, который был изначально назначен свойству htmlText
, демонстрируя, что проигрыватель Flash Player не добавлял других тегов.
package { import flash.display.Sprite; import flash.text.StyleSheet; import flash.text.TextField; public class TextField_text extends Sprite { public function TextField_text() { var tf1:TextField = createCustomTextField(10, 10, 400, 22); tf1.htmlText = "<b>Lorem ipsum dolor sit amet.</b>"; // htmlText: <P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"><b>Lorem ipsum dolor sit amet.</b></FONT></P> trace("htmlText: " + tf1.htmlText); // text: Lorem ipsum dolor sit amet. trace("text: " + tf1.text); var tf2:TextField = createCustomTextField(10, 50, 400, 22); tf2.styleSheet = new StyleSheet(); tf2.htmlText = "<b>Lorem ipsum dolor sit amet.</b>"; // htmlText: <b>Lorem ipsum dolor sit amet.</b> trace("htmlText: " + tf2.htmlText); // text: Lorem ipsum dolor sit amet. trace("text: " + tf2.text); } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
length | свойство |
maxChars | свойство |
maxChars:int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Введенное пользователем максимальное число символов, которое может содержать текстовое поле. Сценарий может вставить больше текста, чем допускает maxChars
. Свойство maxChars
указывает только количество символов, которые может ввести пользователь. Если это свойство имеет значение 0
, пользователь может ввести любое количество символов.
Значением по умолчанию является 0.
Реализация
public function get maxChars():int
public function set maxChars(value:int):void
maxScrollH | свойство |
maxScrollV | свойство |
mouseWheelEnabled | свойство |
mouseWheelEnabled:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Логическое значение, определяющее, выполняет ли проигрыватель Flash Player автоматическую прокрутку многострочных текстовых полей, когда пользователь щелкает текстовое поле и вращает колесико мыши. Значение по умолчанию — true
. Это свойство целесообразно, если требуется предотвратить прокрутку текстового поля с помощью колесика мыши или внедрить собственную функцию прокрутки текста.
Реализация
public function get mouseWheelEnabled():Boolean
public function set mouseWheelEnabled(value:Boolean):void
multiline | свойство |
multiline:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Показывает, является ли текстовое поле многострочным. Если значение — true
, текстовое поле многострочное, а если значение — false
, то однострочное. В поле типа TextFieldType.INPUT
значение multiline
определяет, создает ли клавиша Enter
новую строку (при значении false
нажатие клавиши Enter
игнорируется). Если вставить текст в поле TextField
со свойством multiline
в значении false
, новые строки опускаются.
Значением по умолчанию является false.
Реализация
public function get multiline():Boolean
public function set multiline(value:Boolean):void
Связанные элементы API
numLines | свойство |
numLines:int
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Определяет число строк текста в многострочном текстовом поле. Если свойство wordWrap
имеет значение true
, то при переносе текста количество строк увеличивается.
Реализация
public function get numLines():int
Связанные элементы API
restrict | свойство |
restrict:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Определяет набор символов, которые могут быть введены пользователем в текстовом поле. Если свойству restrict
присвоено значение null
, можно ввести любой символ. Если в качестве значения свойства restrict
установлена пустая строка, ввод символов невозможен. Если значение restrict
— это строка, состоящая из символов, в текстовое поле можно вводить только символы из этой строки. Строка сканируется слева направо. Диапазон определяется с помощью символа (-). Ограничивается только взаимодействие пользователей; с помощью сценариев в текстовом поле можно ввести любой текст. Это свойство не синхронизируется с параметрами встраивания шрифтов в инспекторе свойств.
Если строка начинается с символа вставки (^), все символы изначально поддерживаются, а последующие символы в строке исключаются из набора поддерживаемых символов. Если строка не начинается с символа вставки (^), символы изначально не поддерживаются, а последующие символы в строке включаются в набор поддерживаемых символов.
В следующем примере в текстовое поле можно вводить только заглавные буквы, пробелы и цифры.
my_txt.restrict = "A-Z 0-9";
В следующем примере включены все символы, но исключены строчные буквы.
my_txt.restrict = "^a-z";
Можно использовать обратную косую черту для ввода символа ^ или -. Допускаются следующие последовательности с обратной косой чертой: \-, \^ или \\. Обратная косая черта должна быть фактическим символом в строке, потому, когда она задана в коде ActionScript, необходимо использовать двойную обратную косую черту. Например, следующий код включает только дефис (-) и символ вставки (^).
my_txt.restrict = "\\-\\^";
Символ ^ может использоваться в любом месте строки для переключения между включенными и исключенными символами. Следующий код включает только заглавные буквы, но исключает заглавную букву Q.
my_txt.restrict = "A-Z^Q";
Для создания строк restrict
можно использовать управляющую последовательность \u
. Следующий код включает только символы с ASCII 32 (пробел) до ASCII 126 (тильда).
my_txt.restrict = "\u0020-\u007E";
Значением по умолчанию является null.
Реализация
public function get restrict():String
public function set restrict(value:String):void
scrollH | свойство |
scrollH:int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Текущее положение горизонтальной прокрутки. Если свойство scrollH
имеет значение 0, текст не прокручивается по горизонтали. Значением этого свойства является целое число, представляющее положение по горизонтали в пикселях.
Единицей измерения горизонтальной прокрутки являются пиксели, а вертикальной — строки. Горизонтальная прокрутка измеряется в пикселях, так как большинство распространенных шрифтов расставляются пропорционально, то есть символы могут иметь разную ширину. Проигрыватель Flash Player выполняет вертикальную прокрутку по строкам, так как пользователи обычно хотят видеть строку текста целиком, а не частично. Даже если в строке используются разные шрифты, ее высота регулируется в соответствии с самым большим используемым шрифтом.
Примечание. Значение свойства scrollH
отсчитывается от нуля, а значение свойства scrollV
(для вертикальной прокрутки) — от единицы.
Реализация
public function get scrollH():int
public function set scrollH(value:int):void
Связанные элементы API
scrollV | свойство |
scrollV:int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Вертикальное положение текста в текстовом поле. Свойство scrollV
целесообразно для направления пользователей к определенному абзацу в длинном тексте или для создания прокручиваемых текстовых полей.
Единицей измерения вертикальной прокрутки являются строки, а горизонтальной — пиксели. Если первая отображаемая строка является первой строкой в текстовом поле, то свойство scrollV имеет значение 1 (не 0). Горизонтальная прокрутка измеряется в пикселях, так как большинство шрифтов расставляются пропорционально, то есть символы могут иметь разную ширину. Flash выполняет вертикальную прокрутку по строкам, так как пользователи обычно хотят видеть строку текста целиком, а не частично. Даже если строка содержит разные шрифты, ее высота регулируется в соответствии с самым большим используемым шрифтом.
Реализация
public function get scrollV():int
public function set scrollV(value:int):void
Связанные элементы API
selectable | свойство |
selectable:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Логическое значение, определяющее, можно ли выбрать текстовое поле. Значение true
указывает на то, что текст можно выделить. Свойство selectable
управляет возможностью выделения содержимого текстового поля, а не возможностью его редактирования. Динамическое текстовое поле может поддерживать выделение даже при отсутствии возможности редактирования. Если динамическое текстовое поле не поддерживает выделения, пользователь не может выделять его содержимое.
Если свойство selectable
имеет значение false
, содержимое текстового поля не реагирует на команды выделения мыши и клавиатуры, и его нельзя копировать с использованием команды «Копировать». Если свойство selectable
имеет значение true
, содержимое текстового поля можно выделить с помощью мыши и клавиатуры, и его можно копировать с использованием команды «Копировать». Таким образом можно выделить текст, даже если текстовое поле является динамическим, а не полем ввода.
Значением по умолчанию является true.
Реализация
public function get selectable():Boolean
public function set selectable(value:Boolean):void
Связанные элементы API
Пример ( Использование этого примера )
selectable
в значении true
, а другое со свойством selectable
в значении false
. Выполняя этот пример, попробуйте выделить текст в этих полях с помощью мыши или клавиатуры.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; public class selectableExample extends Sprite { public function selectableExample() { var tf1:TextField = createCustomTextField(10, 10); tf1.text="This text can be selected"; tf1.selectable=true; var tf2:TextField = createCustomTextField(10, 30); tf2.text="This text cannot be selected"; tf2.selectable=false; } private function createCustomTextField(x:Number, y:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.autoSize=TextFieldAutoSize.LEFT; addChild(result); return result; } } }
selectionBeginIndex | свойство |
selectionBeginIndex:int
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Отсчитываемое от нуля значение индекса для первого символа в текущем выделенном фрагменте. Например, первый символ имеет индекс 0, второй — индекс 1 и т. д. Если текст не выделен, это свойство является значением caretIndex
.
Реализация
public function get selectionBeginIndex():int
Связанные элементы API
Пример ( Использование этого примера )
printCursorPosition
. В данном случае значения свойств caretIndex
, selectionBeginIndex
и selectionEndIndex
выводятся на экран.
Запустите этот пример и попробуйте щелкнуть мышью в текстовом поле TextField, чтобы выделить текст. После этого щелкните поле, не выделяя текст. При щелчке по тексту без выделения, свойство caretIndex
указывает местоположение точки вставки, а свойства selectionBeginIndex
и selectionEndIndex
имеют то же значение, что caretIndex
.
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.text.TextFieldType; public class TextField_caretIndex extends Sprite { public function TextField_caretIndex() { var tf:TextField = createCustomTextField(10, 10, 100, 100); tf.wordWrap = true; tf.type = TextFieldType.INPUT; tf.text = "Click in this text field. Compare the difference between clicking without selecting versus clicking and selecting text."; tf.addEventListener(MouseEvent.CLICK, printCursorPosition); } private function printCursorPosition(event:MouseEvent):void { var tf:TextField = TextField(event.target); trace("caretIndex:", tf.caretIndex); trace("selectionBeginIndex:", tf.selectionBeginIndex); trace("selectionEndIndex:", tf.selectionEndIndex); } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
selectionEndIndex | свойство |
selectionEndIndex:int
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Отсчитываемое от нуля значение индекса для последнего символа в текущем выделенном фрагменте. Например, первый символ имеет индекс 0, второй — индекс 1 и т. д. Если текст не выделен, это свойство является значением caretIndex
.
Реализация
public function get selectionEndIndex():int
Связанные элементы API
Пример ( Использование этого примера )
printCursorPosition
. В данном случае значения свойств caretIndex
, selectionBeginIndex
и selectionEndIndex
выводятся на экран.
Запустите этот пример и попробуйте щелкнуть мышью в текстовом поле TextField, чтобы выделить текст. После этого щелкните поле, не выделяя текст. При щелчке по тексту без выделения, свойство caretIndex
указывает местоположение точки вставки, а свойства selectionBeginIndex
и selectionEndIndex
имеют то же значение, что caretIndex
.
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.text.TextFieldType; public class TextField_caretIndex extends Sprite { public function TextField_caretIndex() { var tf:TextField = createCustomTextField(10, 10, 100, 100); tf.wordWrap = true; tf.type = TextFieldType.INPUT; tf.text = "Click in this text field. Compare the difference between clicking without selecting versus clicking and selecting text."; tf.addEventListener(MouseEvent.CLICK, printCursorPosition); } private function printCursorPosition(event:MouseEvent):void { var tf:TextField = TextField(event.target); trace("caretIndex:", tf.caretIndex); trace("selectionBeginIndex:", tf.selectionBeginIndex); trace("selectionEndIndex:", tf.selectionEndIndex); } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
sharpness | свойство |
sharpness:Number
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Четкость контуров символов в этом текстовом поле. Это свойство применяется, только если свойство flash.text.AntiAliasType
текстового поля имеет значение flash.text.AntiAliasType.ADVANCED
. Допустимый диапазон значений свойства sharpness
: числа от -400 до 400. При попытке задать свойству sharpness
значение, находящееся за пределами этого диапазона, проигрыватель Flash Player назначает ему ближайшее значение в диапазоне (-400 или 400).
Значением по умолчанию является 0.
Реализация
public function get sharpness():Number
public function set sharpness(value:Number):void
Связанные элементы API
Пример ( Использование этого примера )
sharpness
для объекта TextField. Необходимо встроить шрифт и задать свойству antiAliasType
значение ADVANCED
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.text.AntiAliasType; import flash.text.GridFitType; import flash.text.TextFormat; public class sharpnessExample extends Sprite { public function sharpnessExample() { var format1:TextFormat = new TextFormat(); format1.font="Arial"; format1.size=24; var lTxt:String = "The quick brown fox"; var tf1:TextField=createCustomTextField(0,lTxt,format1,-400); var tf2:TextField=createCustomTextField(30,lTxt,format1,0); var tf3:TextField=createCustomTextField(60,lTxt,format1,400); } private function createCustomTextField(y:Number,fldTxt:String,format:TextFormat,fldSharpness:Number):TextField { var result:TextField = new TextField(); result.y=y; result.text=fldTxt; result.embedFonts=true; result.autoSize=TextFieldAutoSize.LEFT; result.antiAliasType=AntiAliasType.ADVANCED; result.gridFitType=GridFitType.PIXEL; result.sharpness=fldSharpness; result..setTextFormat(format); addChild(result); return result; } } }
styleSheet | свойство |
styleSheet:StyleSheet
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Присоединяет таблицу стилей к текстовому полю. Сведения о создании таблиц стилей см. в описании класса StyleSheet и Руководстве разработчика по ActionScript 3.0.
Таблицу стилей, связанную с текстовым полем, можно изменить в любое время. При изменении текущей таблицы стилей текстовое поле перерисовывается с использованием новой таблицы стилей. Чтобы удалить таблицу стилей, нужно задать значение null
или undefined
. Если текущая таблица стилей удаляется, текстовое поле перерисовывается без нее.
Примечание. Если таблица стилей удаляется, содержимоеTextField.text
и TextField.htmlText
изменяется для внедрения форматирования, которое раньше применялось с помощью таблицы стилей. Чтобы сохранить исходное содержимое TextField.htmlText
без форматирования, нужно сохранить значение в переменной, прежде чем удалять таблицу стилей.
Реализация
public function get styleSheet():StyleSheet
public function set styleSheet(value:StyleSheet):void
Связанные элементы API
Пример ( Использование этого примера )
stylesheet
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.StyleSheet; public class TextStylesheetExample extends Sprite { var myLabel:TextField = new TextField(); var labelText:String = "Hello world."; var newStyle:StyleSheet = new StyleSheet(); public function TextStylesheetExample() { var styleObj:Object = new Object(); styleObj.fontWeight = "bold"; styleObj.color = "#660066"; newStyle.setStyle(".defStyle", styleObj); myLabel.styleSheet=newStyle; myLabel.htmlText=labelText; addChild(myLabel); } } }
text | свойство |
text:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Строка, представляющая текущий текст в текстовом поле. Строки разделяются символом возврата каретки (\r
, ASCII 13). Это свойство содержит неформатированный текст в текстовом поле без тегов HTML.
Чтобы получить текст в виде HTML, используйте свойство htmlText
.
Примечание. Если таблица стилей применена к текстовому полю, содержимое свойства text
будет интерпретироваться как код HTML.
Реализация
public function get text():String
public function set text(value:String):void
Связанные элементы API
Пример ( Использование этого примера )
tf1
, свойству text
которого назначается строка в формате HTML. Когда отслеживается его свойство htmlText
, выводится строка в формате HTML, к которой проигрыватель Flash Player автоматически добавляет дополнительные теги, например <P> и <FONT>. Когда отслеживается значение свойства text
, отображается неотформатированная строка без тегов HTML.
По аналогии, эти же действия выполняются с другим объектом TextField с именем tf2
, но свойству styleSheet
поля tf2
назначается объект StyleSheet, прежде чем задается свойство htmlText
. В этом случае, когда отслеживается свойство htmlText
, оно включает только тот текст HTML, который был изначально назначен свойству htmlText
, демонстрируя, что проигрыватель Flash Player не добавлял других тегов.
package { import flash.display.Sprite; import flash.text.StyleSheet; import flash.text.TextField; public class TextField_text extends Sprite { public function TextField_text() { var tf1:TextField = createCustomTextField(10, 10, 400, 22); tf1.htmlText = "<b>Lorem ipsum dolor sit amet.</b>"; // htmlText: <P ALIGN="LEFT"><FONT FACE="Times New Roman" SIZE="12" COLOR="#000000" LETTERSPACING="0" KERNING="0"><b>Lorem ipsum dolor sit amet.</b></FONT></P> trace("htmlText: " + tf1.htmlText); // text: Lorem ipsum dolor sit amet. trace("text: " + tf1.text); var tf2:TextField = createCustomTextField(10, 50, 400, 22); tf2.styleSheet = new StyleSheet(); tf2.htmlText = "<b>Lorem ipsum dolor sit amet.</b>"; // htmlText: <b>Lorem ipsum dolor sit amet.</b> trace("htmlText: " + tf2.htmlText); // text: Lorem ipsum dolor sit amet. trace("text: " + tf2.text); } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
textColor | свойство |
textColor:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Цвет текста в текстовом поле (в шестнадцатеричном формате). Шестнадцатеричная система цвета использует шесть знаков для представления цветовых значений. Каждый знак имеет 16 возможных значений или символов. Символы находятся в диапазоне 0 — 9 и затем A — F. Например, черный цвет — это 0x000000
, а белый — 0xFFFFFF
.
Значением по умолчанию является 0 (0x000000).
Реализация
public function get textColor():uint
public function set textColor(value:uint):void
Пример ( Использование этого примера )
textColor
на красный (0xFF0000
).
package { import flash.display.Sprite; import flash.text.TextField; public class TextField_textColor extends Sprite { public function TextField_textColor() { var tf:TextField = createCustomTextField(10, 10, 100, 300); tf.text = "This will be red text"; tf.textColor = 0xFF0000; } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; addChild(result); return result; } } }
textHeight | свойство |
textHeight:Number
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Высота текста в пикселях.
Реализация
public function get textHeight():Number
Связанные элементы API
Пример ( Использование этого примера )
trace
отображают значения свойств textWidth
и textHeight
. Для сравнения также отображаются свойства width
и height
. (Обратите внимание, что значения, отображаемые для свойств textHeight
и textWidth
, могут варьироваться в зависимости от шрифта, используемого на компьютере).
package { import flash.display.Sprite; import flash.text.TextField; public class TextField_textHeight extends Sprite { public function TextField_textHeight() { var tf:TextField = createCustomTextField(10, 10, 100, 150); tf.text = "Sample text"; trace("textWidth: " + tf.textWidth); // textWidth: 55.75 trace("textHeight: " + tf.textHeight); // textHeight: 13.450000000000001 trace("width: " + tf.width); // width: 100 trace("height: " + tf.height); // height: 150 } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; result.border = true; result.background = true; addChild(result); return result; } } }
textInteractionMode | свойство |
textInteractionMode:String
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 11, Flash Lite 4 |
Свойство режима взаимодействия, Значение по умолчанию — TextInteractionMode.NORMAL. На мобильных платформах нормальный режим подразумевает, что текст может быть прокручен, но не выбран. Можно переключиться на выбираемый режим через встроенное контекстное меню на текстовом поле. На компьютере нормальный режим подразумевает, что текст находится в прокручиваемом, а также режиме выделения.
Реализация
public function get textInteractionMode():String
textWidth | свойство |
textWidth:Number
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ширина текста в пикселях.
Реализация
public function get textWidth():Number
Связанные элементы API
Пример ( Использование этого примера )
trace
отображают значения свойств textWidth
и textHeight
. Для сравнения также отображаются свойства width
и height
. (Обратите внимание, что значения, отображаемые для свойств textHeight
и textWidth
, могут варьироваться в зависимости от шрифта, используемого на компьютере).
package { import flash.display.Sprite; import flash.text.TextField; public class TextField_textHeight extends Sprite { public function TextField_textHeight() { var tf:TextField = createCustomTextField(10, 10, 100, 150); tf.text = "Sample text"; trace("textWidth: " + tf.textWidth); // textWidth: 55.75 trace("textHeight: " + tf.textHeight); // textHeight: 13.450000000000001 trace("width: " + tf.width); // width: 100 trace("height: " + tf.height); // height: 150 } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; result.border = true; result.background = true; addChild(result); return result; } } }
thickness | свойство |
thickness:Number
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Толщина контуров символов в данном текстовом поле. Это свойство применяется, только когда параметр flash.text.AntiAliasType
имеет значение flash.text.AntiAliasType.ADVANCED
.
Допустимый диапазон значений свойства thickness
: числа от -200 до 200. При попытке задать свойству thickness
значение, находящееся за пределами этого диапазона, проигрыватель Flash Player назначает ему ближайшее значение в диапазоне (-200 или 200).
Значением по умолчанию является 0.
Реализация
public function get thickness():Number
public function set thickness(value:Number):void
Связанные элементы API
Пример ( Использование этого примера )
thickness
для объекта TextField. Необходимо встроить шрифт и задать свойству antiAliasType
значение ADVANCED
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.text.AntiAliasType; import flash.text.GridFitType; import flash.text.TextFormat; public class thicknessExample extends Sprite { public function thicknessExample() { var format1:TextFormat = new TextFormat(); format1.font="Arial"; format1.size=24; var lTxt:String = "The quick brown fox"; var tf1:TextField=createCustomTextField(0,lTxt,format1,-200); var tf2:TextField=createCustomTextField(30,lTxt,format1,0); var tf3:TextField=createCustomTextField(60,lTxt,format1,200); } private function createCustomTextField(y:Number,fldTxt:String,format:TextFormat,fldThickness:Number):TextField { var result:TextField = new TextField(); result.y=y; result.text=fldTxt; result.embedFonts=true; result.autoSize=TextFieldAutoSize.LEFT; result.antiAliasType=AntiAliasType.ADVANCED; result.gridFitType=GridFitType.PIXEL; result.thickness=fldThickness; result.setTextFormat(format); addChild(result); return result; } } }
type | свойство |
type:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Тип текстового поля. Одна из следующих констант класса TextFieldType: TextFieldType.DYNAMIC
, задающая динамическое текстовое поле, которое не может редактироваться пользователем, или TextFieldType.INPUT
, задающая текстовое поле ввода, которое может редактироваться пользователем.
Значением по умолчанию является dynamic.
Реализация
public function get type():String
public function set type(value:String):void
Выдает
ArgumentError — Заданный параметр type не является элементом flash.text.TextFieldType.
|
Связанные элементы API
Пример ( Использование этого примера )
tfDynamic
и tfInput
. Текст вводится в оба текстовых поля. Однако для tfDynamic
свойство type
имеет значение TextFieldType.DYNAMIC
, а для tfInput
свойство type
имеет значение TextFieldType.INPUT
, чтобы пользователь мог модифицировать текст в поле tfInput
, а в поле tfDynamic
— только просматривать.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; public class TextField_type extends Sprite { public function TextField_type() { var tfDynamic:TextField = createCustomTextField(10, 10, 100, 20); tfDynamic.type = TextFieldType.DYNAMIC; tfDynamic.text = "hello"; var tfInput:TextField = createCustomTextField(10, 45, 100, 20); tfInput.type = TextFieldType.INPUT; tfInput.text = "world"; } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; result.background = true; result.border = true; addChild(result); return result; } } }
useRichTextClipboard | свойство |
useRichTextClipboard:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет, будет ли форматирование текста копироваться и вставляться вместе с самим текстом. Если задано значение true
, при копировании и вставке текста из одного текстового поля в другое проигрыватель Flash Player также копирует и вставляет форматирование (например, выравнивание, полужирное и курсивное начертание). Для обоих текстовых полей, участвующих в операции копирования и вставки свойство useRichTextClipboard
должно иметь значение true
. Значение по умолчанию false
.
Реализация
public function get useRichTextClipboard():Boolean
public function set useRichTextClipboard(value:Boolean):void
Пример ( Использование этого примера )
tf1
) и два динамических текстовых поля (tf2
и tf3
). Код назначает каждому динамическому текстовому полю объект TextFormat (полужирный шрифт Courier). Для текстового поля tf2
свойство useRichTextClipboard
имеет значение false
. Для текстового поля tf3
свойство useRichTextClipboard
имеет значение true
. Когда текст копируется из поля tf2
и вставляется в текстовое поле tf1
, вставленный фрагмент не сохраняет форматирование. Когда текст копируется из поля tf3
(у которого свойство useRichTextClipboard
имеет значение true
) и вставляется в текстовое поле tf1
, вставленный фрагмент сохраняет форматирование.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.text.TextFormat; public class useRichTextClipboard extends Sprite { public function useRichTextClipboard() { var format1:TextFormat = new TextFormat(); format1.font="Courier"; format1.bold=true; var tf1:TextField = createCustomTextField(10, 10, 200, 20); tf1.type=TextFieldType.INPUT; tf1.useRichTextClipboard=true; var tf2:TextField = createCustomTextField(220, 10, 200, 20); tf2.text="1.Text loses format"; tf2.setTextFormat(format1); tf2.useRichTextClipboard=false; var tf3:TextField = createCustomTextField(220, 50, 200, 20); tf3.text="2.Text includes format"; tf3.setTextFormat(format1); tf3.useRichTextClipboard=true; } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; result.background = true; result.border = true; addChild(result); return result; } } }
wordWrap | свойство |
wordWrap:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Логическое значение, определяющее применение переноса по словам к текстовому полю. Если свойство wordWrap
имеет значение true
, текстовое поле поддерживает перенос слов, а если оно имеет значение false
, то перенос слов запрещен. Значение по умолчанию false
.
Реализация
public function get wordWrap():Boolean
public function set wordWrap(value:Boolean):void
Пример ( Использование этого примера )
true
и false
для свойства wordWrap
. Создаются два экземпляра TextField, содержимое которых превышает ширину текстового поля. Для первого поля с именем tfWrap
свойство wordWrap
имеет значение true
; а для второго (tfNoWrap
) -false
.
package { import flash.display.Sprite; import flash.text.TextField; public class TextField_wordWrap extends Sprite { public function TextField_wordWrap() { var tfWrap:TextField = createCustomTextField(10, 10, 100, 100); tfWrap.wordWrap = true; tfWrap.text = "(wordWrap = true):\nThis is very long text that will certainly extend beyond the width of this text field"; var tfNoWrap:TextField = createCustomTextField(10, 150, 100, 100); tfNoWrap.wordWrap = false; tfNoWrap.text = "(wordWrap = false):\nThis is very long text that will certainly extend beyond the width of this text field"; } private function createCustomTextField(x:Number, y:Number, width:Number, height:Number):TextField { var result:TextField = new TextField(); result.x = x; result.y = y; result.width = width; result.height = height; result.background = true; result.border = true; addChild(result); return result; } } }
TextField | () | Конструктор |
public function TextField()
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Создает новый экземпляр TextField. После создания экземпляра TextField вызовите метод addChild()
или addChildAt()
родительского объекта DisplayObjectContainer, чтобы добавить экземпляр в список отображения TextField.
Размер по умолчанию для текстового поля — 100 х 100 пикселей.
Пример ( Использование этого примера )
var theTextField:TextField = new TextField(); theTextField.type = TextFieldType.INPUT; theTextField.border = true; theTextField.x = 10; theTextField.y = 10; theTextField.multiline = true; theTextField.wordWrap = true; addChild(theTextField);
appendText | () | метод |
public function appendText(newText:String):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Добавляет строку, указанную параметром newText
, в конец текста в текстовом поле. Этот метод более эффективен, чем присвоение сложения (+=
) в свойстве text
(например, someTextField.text += moreText
), особенно для текстовых полей с большим объемом содержимого.
Параметры
newText:String — Строка, добавляемая к существующему тексту.
|
Пример ( Использование этого примера )
Текстовое поле outputText
настроено так, чтобы автоматически соответствовать тексту и изменять размер с выравниванием текста по левому краю с помощью свойства autoSize
. Свойство outputText.text
записывает первую строку содержимого и метод appendText()
добавляет оставшуюся часть текста. (Необязательно начинать со свойства text
. Метод appendText()
можно было использовать также для добавления текста с самого начала.) Повторное определение свойства text
приведет к перезаписи исходного текста. Используйте оператор +=
, чтобы добавлять содержимое с помощью свойства text
.
Инструкция if
проверяет, выпадает ли дата на субботу (6) или воскресенье (0). Если нет, то метод toLocaleTimeString()
возвращает местное время, которое добавляется к содержимому текстового поля.
Свойство length
текстового поля используется для считывания количества символов вплоть до вызова функции, а свойство numLines
используется для подсчета числа строк в текстовом поле. Обратите внимание, что пустые строки учитываются при подсчете строк, а пробелы или разрывы строки (\n) учитываются при определении длины содержимого.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; public class TextField_appendTextExample extends Sprite { public function TextField_appendTextExample() { var outputText:TextField = new TextField(); var today:Date = new Date(); outputText.x = 10; outputText.y = 10; outputText.background = true; outputText.autoSize = TextFieldAutoSize.LEFT; outputText.text = "WHAT TIME IS IT?" + "\n\n"; if((today.day == 0) || (today.day == 6)) { outputText.appendText("It's the weekend."); outputText.appendText("\n\n"); } else { outputText.appendText("The time is: "); outputText.appendText(today.toLocaleTimeString() + ".\n\n"); } outputText.appendText("Number of characters including line breaks and spaces so far: "); outputText.appendText(outputText.length.toString() + "\n"); outputText.appendText("Number of lines in the outputText: "); outputText.appendText(outputText.numLines.toString()); this.addChild(outputText); } } }
getCharBoundaries | () | метод |
public function getCharBoundaries(charIndex:int):Rectangle
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает прямоугольник, который является ограничительным блоком символа.
Параметры
charIndex:int — Отсчитываемое от нуля значение индекса для символа (например, первая позиция — 0, вторая позиция — 1 и т.д.)
|
Rectangle — Прямоугольник с минимальными и максимальными значениями по осям x и y , определяющий ограничительный блок символа.
|
Связанные элементы API
Пример ( Использование этого примера )
getCharBoundaries()
используется для пометки (подсветки) символа, выделенного пользователем.
Класс определяет объект Shape с именем spotlight
, который будет использоваться для рисования прямоугольника вокруг каждого выделенного символа. Когда пользователь щелкает текстовое поле myTextField
, вызывается метод clickHandler()
.
В методе clickHandler()
метод getCharIndexAtPoint()
получает индекс выбранного символа на основе координат localX
и localY
щелчка мыши, которые определяются относительно содержащего объекта Sprite
. Метод getCharIndexAtPoint()
возвращает -1
, если точка (щелчок мыши) не находится в области символов. Так как текстовое поле может быть больше текста, проверяется возвращенное целое число (index
), чтобы убедиться, что пользователь щелкнул по символу. Целое число index
также используется методом getCharBoundaries()
для получения объекта Rectangle
, содержащего ограничительный блок символа. Метод clear()
все отображавшиеся ранее объекты Shape с именем spotlight
. Новый прямоугольник с размерами ширины и высоты символа создается в местоположении символа (смещение с точки с координатами (10, 10)) с помощью возвращенных координат х и у прямоугольника frame
. Чтобы сделать подсветку символа, объект Shape с именем spotlight
заполняется желтым цветом с прозрачностью 35%, чтобы символ можно было увидеть. Обратите внимание, что пробелы также рассматриваются как символы.
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.geom.Rectangle; import flash.events.MouseEvent; import flash.text.TextFieldAutoSize; import flash.display.Shape; public class TextField_getCharBoundariesExample extends Sprite { private var myTextField:TextField = new TextField(); private var spotlight:Shape = new Shape(); public function TextField_getCharBoundariesExample() { myTextField.x = 10; myTextField.y = 10; myTextField.border = true; myTextField.selectable = false; myTextField.autoSize = TextFieldAutoSize.LEFT; myTextField.text = "Selected a character from this text by clicking on it." myTextField.addEventListener(MouseEvent.CLICK, clickHandler); this.addChild(myTextField); this.addChild(spotlight); } private function clickHandler (e:MouseEvent):void { var index:int = myTextField.getCharIndexAtPoint(e.localX, e.localY); if (index != -1) { var frame:Rectangle = myTextField.getCharBoundaries(index); spotlight.graphics.clear(); spotlight.graphics.beginFill(0xFFFF00, .35); spotlight.graphics.drawRect((frame.x + 10), (frame.y + 10), frame.width, frame.height); spotlight.graphics.endFill(); } } } }
getCharIndexAtPoint | () | метод |
public function getCharIndexAtPoint(x:Number, y:Number):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает значение индекса, отсчитываемое от нуля, для символа в точке, определенной параметрами x
и y
.
Параметры
x:Number — Координата x символа.
| |
y:Number — Координата y символа.
|
int — Отсчитываемое от нуля значение индекса для символа (например, первая позиция — 0, вторая позиция — 1 и т.д.). Возвращает -1, если точка не находится в области символа.
|
Пример ( Использование этого примера )
Первое текстовое поле содержит текст, который будет выбирать пользователь. Чтобы текст не выделялся при щелчке, свойству selectable
задается значение false. Когда пользователь щелкает текстовое поле firstTextField
, вызывается метод clickHandler()
.
В методе clickHandler()
метод getCharIndexAtPoint()
возвращает индекс символа на основе координат localX
и localY
щелчка мыши. Так как текстовое поле может быть больше текста, проверяется возвращаемое целое число (index
), чтобы убедиться, что пользователь щелкнул по символу. (Метод getCharIndexAtPoint()
возвращает -1
, если точка (щелчок мыши) не находится в области символа.) Координаты мыши используются для определения координат нового текстового поля, где будет повторяться выбранный символ. Задается красный цвет для символа во втором текстовом поле. В завершение, тексту во втором поле назначается выбранный символ, получаемый с помощью метода charAt()
. Обратите внимание, что при использовании свойства text
вместо метода appendText()
приведет к перезаписи символа во втором текстовом поле, а не к его добавлению.
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.geom.Rectangle; import flash.events.MouseEvent; import flash.text.TextFieldAutoSize; public class TextField_getCharIndexAtPointExample extends Sprite { private var firstTextField:TextField = new TextField(); private var secondTextField:TextField = new TextField(); public function TextField_getCharIndexAtPointExample() { firstTextField.x = 100; firstTextField.y = 100; firstTextField.width = 260; firstTextField.height = 20; firstTextField.border = true; firstTextField.background = true; firstTextField.selectable = false; firstTextField.text = "Selected a character from this text by clicking on it." firstTextField.addEventListener(MouseEvent.CLICK, clickHandler); this.addChild(firstTextField); this.addChild(secondTextField); } private function clickHandler (e:MouseEvent):void { var index:int = firstTextField.getCharIndexAtPoint(e.localX, e.localY); if (index != -1) { secondTextField.x = mouseX; secondTextField.y = 70; secondTextField.border = true; secondTextField.selectable = false; secondTextField.background = true; secondTextField.textColor = 0xFF0000; secondTextField.autoSize = TextFieldAutoSize.LEFT; secondTextField.text = firstTextField.text.charAt(index); } } } }
getFirstCharInParagraph | () | метод |
public function getFirstCharInParagraph(charIndex:int):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Получив индекс символа, возвращает индекс первого символа в том же абзаце.
Параметры
charIndex:int — Отсчитываемое от нуля значение индекса для символа (например, первый символ — 0, второй символ — 1 и т. д.).
|
int — Отсчитываемое от нуля значение индекса для первого символа в строке в том же абзаце.
|
Выдает
RangeError — Указанный индекс символа находится за пределами диапазона.
|
Пример ( Использование этого примера )
В конструкторе для текстового поля myTextField
задается перенос текста. Метод getTextFormat
возвращает исходный формат первого символа содержимого текстового поля, которое помещается в объект TextFormat с именем originalFormat
. Также определяется новый объект TextFormat (newFormat
) и его свойству align
задается выравнивание по правому краю. Когда пользователь щелкает текстовое поле, вызывается метод clickHandler()
.
В методе clickHandler()
метод getCharIndexAtPoint()
возвращает индекс символа на основе координат localX
и localY
щелчка мыши. Первая инструкция if
проверяет, щелкнул ли пользователь по символу. С помощью целого числа clickIndex
, возвращенного методом getCharIndexAtPoint()
, метод getFirstCharInParagraph()
возвращает индекс первого символа в абзаце, получившем щелчок пользователя. Индекс последнего символа в абзаце определяется путем добавления длины абзаца (с помощью метода getParagraphLength()
) к индексу первого символа минут последний символ (\n
). Второй оператор if
проверяет формат первого символа в абзаце. Если значение свойства выравнивания совпадает с исходным форматом (по левому краю), новый формат применяется ко всем символам абзаца. В противном случае формат абзаца возвращается к исходному формату. Выравнивание, а также такие элементы форматирования, как отступ, маркер, табуляция, левое и правое поля, предназначены для абзацев. Обратите внимание, что при использовании переноса слов и разрыва строк, форматирование применяется только к верой строка абзаца, если не определен аргумент endIndex
для метода setTextFormat()
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.events.MouseEvent; import flash.text.TextFormat; import flash.text.TextFormatAlign; public class TextField_getFirstCharInParagraphExample extends Sprite { private var myTextField:TextField = new TextField(); private var originalFormat:TextFormat = new TextFormat(); private var newFormat:TextFormat = new TextFormat(); public function TextField_getFirstCharInParagraphExample() { myTextField.x = 10; myTextField.y = 10; myTextField.border = true; myTextField.wordWrap = true; myTextField.width = 300; myTextField.height = 300; myTextField.background = true; myTextField.appendText("The TextField class is used to create display objects for " + "text display and input. All dynamic and input text fields in a SWF file " + "are instances of the TextField class. You can use the TextField class " + "to perform low-level text rendering. However, in Flex, you typically use " + "the Label, Text, TextArea, and TextInput controls to process text. " + "You can give a text field an instance name in the Property inspector " + "and use the methods and properties of the TextField class to manipulate it with ActionScript. " + "TextField instance names are displayed in the Movie Explorer and in the Insert " + "Target Path dialog box in the Actions panel.\n\n" + "To create a text field dynamically, use the TextField constructor.\n\n" + "The methods of the TextField class let you set, select, and manipulate " + "text in a dynamic or input text field that you create during authoring or at runtime.\n\n"); originalFormat = myTextField.getTextFormat(0); newFormat.align = TextFormatAlign.RIGHT; myTextField.addEventListener(MouseEvent.CLICK, clickHandler); this.addChild(myTextField); } private function clickHandler(e:MouseEvent):void { var clickIndex:int = myTextField.getCharIndexAtPoint(e.localX, e.localY); if(clickIndex != -1) { var paragraphFirstIndex:int = myTextField.getFirstCharInParagraph(clickIndex); var paragraphEndIndex:int = paragraphFirstIndex + ((myTextField.getParagraphLength(clickIndex) - 1)); if (myTextField.getTextFormat(paragraphFirstIndex).align == originalFormat.align) { myTextField.setTextFormat(newFormat, paragraphFirstIndex, paragraphEndIndex); }else { myTextField.setTextFormat(originalFormat, paragraphFirstIndex, paragraphEndIndex); } } } } }
getImageReference | () | метод |
public function getImageReference(id:String):DisplayObject
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает ссылку DisplayObject по данному идентификатору id
для изображения или SWF-файла, добавленного в текстовое поле с форматированием HTML с помощью тега <img>
. Тег <img>
имеет следующий формат:
<img src = 'filename.jpg' id = 'instanceName' >
Параметры
id:String — Идентификатор id для сопоставления (в атрибуте id тега <img> ).
|
DisplayObject — Экранный объект, соответствующий изображению или SWF-файлу с соответствующим атрибутом id в теге <img> текстового поля. Для мультимедийного содержимого, загруженного из внешнего источника, этот объект является объектом Loader, и после загрузки мультимедийный объект становится дочерним по отношению к нему. Для мультимедийного содержимого, встроенного в SWF-файл, это загруженный объект Если не существует тега <img> с идентичным атрибутом id , метод возвращает значение null .
|
Связанные элементы API
Пример ( Использование этого примера )
Изображение (image.jpg
) добавлено с помощью HTML. (Предполагается, что файл изображения находится в том же каталоге, что и SWF-файл.) Необходимо определить атрибут id
для тега img
, чтобы получить изображение с помощью метода getImageReference()
. Свойство htmlText
используется для добавление строкового содержимого в формате HTML. Когда пользователь щелкает текстовое поле myTextField
, вызывается метод clickHandler()
.
В методе clickHandler()
метод getImageReference()
возвращает ссылку на изображение в качестве DisplayObject
. Эта ссылка может использовать для выполнения манипуляций с изображением, как с любым объектом DisplayObject
. В данном примере заданы свойства alpha
(прозрачность) и rotation
. Также можно использовать свойство transform
для получения матрицы экранного объекта, преобразования цвета и пиксельных границ. Также обратите внимание, что необходимо импортировать объект flash.display.DisplayObject
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.events.Event; import flash.events.MouseEvent; import flash.display.DisplayObject; import flash.text.TextFieldAutoSize; public class TextField_getImageReferenceExample extends Sprite { private var myTextField:TextField = new TextField(); public function TextField_getImageReferenceExample() { var myText1:String = "<p>Here is an image we want to mainpulate: <img src='image.jpg' id='testimage'></p>"; myTextField.x = 10; myTextField.y = 10; myTextField.width = 250; myTextField.height = 250; myTextField.background = true; myTextField.border = true; myTextField.border = true; myTextField.multiline = true; myTextField.htmlText = myText1; myTextField.addEventListener(MouseEvent.CLICK, clickHandler); this.addChild(myTextField); } private function clickHandler(e:MouseEvent):void { var imageRef:DisplayObject = myTextField.getImageReference("testimage"); imageRef.rotation += 90; imageRef.x = 125; imageRef.y = 125; imageRef.alpha = 0.25; } } }
getLineIndexAtPoint | () | метод |
public function getLineIndexAtPoint(x:Number, y:Number):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает значение индекса, отсчитываемое от нуля, для строки в точке с координатами x
и y
.
Параметры
x:Number — Координата x строки.
| |
y:Number — Координата x строки.
|
int — Отсчитываемое от нуля значение индекса для строки (например, первая строка — 0, вторая строка — 1 и т.д.). Возвращает -1, если точка не находится в области строки.
|
Пример ( Использование этого примера )
В конструкторе для текстового поля poem
запрещается перенос, так как это стихотворение. Также используется свойство autoSize
для автоматического соответствия поля тексту и для изменения размера с выравниванием по левому краю. Текстовое поле poemCopy
располагается под полем poem
. Когда пользователь щелкает по строке сонета, вызывается метод clickHandler()
.
В методе clickHandler()
метод getLineIndexAtPoint()
возвращает индекс строки, по которой щелкнул пользователь, на основе координат localX
и localY
щелчка мыши. (Так как стихотворение укладывается в исходный размер текстового поля, нет необходимости отлеживать ошибку (RangeError
), выдаваемую методом getCharIndexAtPoint()
.) Затем индекс строки используется для получения ее содержимого в виде строкового значения с помощью метода getLineText()
, которое после этого добавляется к содержимому текстового поля poemCopy
. Копирование может продолжаться бесконечно вплоть до момента, когда текст выйдет за пределы видимого текстового поля poemCopy
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.events.MouseEvent; import flash.text.TextFormat; import flash.text.TextFieldAutoSize; public class TextField_getLineIndexAtPointExample extends Sprite { private var poem:TextField = new TextField(); private var poemCopy:TextField = new TextField(); public function TextField_getLineIndexAtPointExample() { poem.border = true; poem.autoSize = TextFieldAutoSize.LEFT; poem.x = 10; poem.wordWrap = false; poemCopy.height = 250; poemCopy.width = 270; poemCopy.y = 230; poemCopy.x = 10; poemCopy.background = true; poemCopy.border = true; poemCopy.wordWrap = false; poem.appendText("Let me not to the marriage of true minds\n" + "Admit impediments. love is not love\n" + "Which alters when it alteration finds\n" + "Or bends with the remover to remove:\n" + "O no! it is an ever-fixed mark\n" + "That looks on tempests and is never shaken;\n" + "It is the star to every wandering bark,\n" + "Whose worth's unknown, although his height be taken.\n" + "Love's not Time's fool, though rosy lips and cheeks\n" + "Within his bending sickle's compass come:\n" + "Love alters not with his brief hours and weeks,\n" + "But bears it out even to the edge of doom.\n" + "If this be error and upon me proved,\n" + "I never writ, nor no man ever loved."); poem.addEventListener(MouseEvent.CLICK, clickHandler); this.addChild(poem); this.addChild(poemCopy); } private function clickHandler(e:MouseEvent):void { var index:int = poem.getLineIndexAtPoint(e.localX, e.localY); var s:String; s = poem.getLineText(index); poemCopy.appendText(s + "\n"); } } }
getLineIndexOfChar | () | метод |
public function getLineIndexOfChar(charIndex:int):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Отсчитываемое от нуля значение индекса для строки, которая содержит символ, заданный параметром charIndex
.
Параметры
charIndex:int — Отсчитываемое от нуля значение индекса для символа (например, первый символ — 0, второй символ — 1 и т. д.).
|
int — Отсчитываемое от нуля значение индекса для строки.
|
Выдает
RangeError — Указанный индекс символа находится за пределами диапазона.
|
Пример ( Использование этого примера )
getLineIndexOfChar()
возвращает номера строк для сотого и пятисотого символов в текстовом поле.
Для текстового поля myTextField
задается перенос слов и изменение размера с выравниванием по левому краю. Метод getLineIndexOfChar()
возвращает индекс строки для символов с указанными индексами (100 и 500). Затем эти сведения добавляются после абзаца. Обратите внимание, что индекс строки отсчитывается от нуля, и поэтому индекс строки (index
) увеличивается на 1 для получения номера строки. Кроме того, если изменяется размер экрана, номер строки может измениться, но информация останется без изменений, так как метод вызывается только один раз.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; public class TextField_getLineIndexOfCharExample extends Sprite { public function TextField_getLineIndexOfCharExample() { var myTextField:TextField = new TextField(); myTextField.x = 10; myTextField.y = 10; myTextField.width = 200; myTextField.background = true; myTextField.border = true; myTextField.wordWrap = true; myTextField.autoSize = TextFieldAutoSize.LEFT; myTextField.appendText("The TextField class is used to create display objects for " + "text display and input. All dynamic and input text fields in a SWF file" + "are instances of the TextField class. You can use the TextField class " + "to perform low-level text rendering. However, in Flex, you typically use " + "the Label, Text, TextArea, and TextInput controls to process text. " + "You can give a text field an instance name in the Property inspector " + "and use the methods and properties of the TextField class to manipulate it with ActionScript. " + "TextField instance names are displayed in the Movie Explorer and in the Insert " + "Target Path dialog box in the Actions panel.\n\n"); var index:int = myTextField.getLineIndexOfChar(100); myTextField.appendText("100th character is in line: " + (index + 1) + "\n"); index = myTextField.getLineIndexOfChar(500); myTextField.appendText("500th character is in line: " + (index + 1)); this.addChild(myTextField); } } }
getLineLength | () | метод |
public function getLineLength(lineIndex:int):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает число символов в заданной строке текста.
Параметры
lineIndex:int — Номер строки, длину которой требуется определить.
|
int — Количество символов в строке.
|
Выдает
RangeError — Заданный номер строки находится за пределами диапазона.
|
Пример ( Использование этого примера )
В качестве иллюстрации, для текстового поля myTextField
, отображающего текст, который будет подсчитываться, задается значение INPUT
, благодаря чему пользователи смогут изменять строки или добавлять строки между строк или в конце текста. (Создается пустая строка с помощью разрыва строки (\n
) в конце последней строки.) Текстовое поле countLines
, в котором отображается результат подсчета длины строки, помещается под полем myTextField
, и его содержимое не реагирует на выделение. Когда пользователь щелкает строку в текстовом поле myTextField
, вызывается метод clickHandler()
.
В методе clickHandler()
метод getLineIndexAtPoint()
возвращает индекс строки, по которой щелкнул пользователь, на основе координат localX
и localY
щелчка мыши. Первая инструкция if
проверяет, щелкнул ли пользователь по символу. Если да, то метод getLineLength()
возвращает число символов в строке на основе ее индекса. Обратите внимание, что пустые строки между строк содержат второй разрыв строки (\n
), вследствие чего их длина составляет один символ, а пустая строка после последней строки не имеет символов. Пробел засчитывается как один символ. Пользователь может написать новую строку или изменить существующую и, щелкнув по ней, получить число символов. Если используется перенос текста и изменился размер экрана, то индекс строки может измениться.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.events.Event; import flash.events.MouseEvent; public class TextField_getLineLengthExample extends Sprite { private var myTextField:TextField = new TextField(); private var countLines:TextField = new TextField(); public function TextField_getLineLengthExample() { myTextField.x = 10; myTextField.y = 10; myTextField.width = 350; myTextField.height = 150; myTextField.background = true; myTextField.border = true; myTextField.type = TextFieldType.INPUT; myTextField.appendText("Click on the lines to count its number of characters:\n\n"); myTextField.appendText("This is a short line.\n"); myTextField.appendText("This is a longer line than the last line.\n\n"); myTextField.appendText("This one is even longer than the one before. It has two sentences.\n"); this.addChild(myTextField); countLines.border = true; countLines.x = 10; countLines.y = 180; countLines.height = 30; countLines.width = 200; countLines.background = true; countLines.selectable = false; this.addChild(countLines); myTextField.addEventListener(MouseEvent.CLICK, clickHandler); } private function clickHandler(e:MouseEvent):void { var index:int = myTextField.getLineIndexAtPoint(e.localX, e.localY); if (index != -1) { var lenght:int = myTextField.getLineLength(index); countLines.text = "Number of characters in the line is: " + lenght.toString(); } } } }
getLineMetrics | () | метод |
public function getLineMetrics(lineIndex:int):flash.text:TextLineMetrics
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает данные метрик для заданной строки текста.
Параметры
lineIndex:int — Номер строки, для которой требуется получить данные метрик.
|
flash.text:TextLineMetrics — Объект TextLineMetrics.
|
Выдает
RangeError — Заданный номер строки находится за пределами диапазона.
|
Связанные элементы API
Пример ( Использование этого примера )
Добавляются две строки из стихотворения Уолта Уитмена Песня о себе. Новый объект TextFormat (newFormat
) используется для указания формата второй строки. Первая строка сохраняет формат по умолчанию. Метод getLineMetrics()
возвращает объект TextLineMetrics
для конкретной строки. (Индекс строки отсчитывается от нуля.) С использованием объектов TextLineMetrics с именами metrics1
и metrics2
для строк 1 и 2 соответственно получаются и отображаются значения для верхнего выносного элемента, нижнего выносного элемента, высоты и веса строки. Полученные числа преобразуются в строковые значения, но не округляются. Обратите внимание, что это значение для строки, а не для отдельного символа. Оно отражает диапазон символов всей строки. Например, если в строке есть разные символы с разными форматами высоты, то это значение будет определяться символом с наибольшей высотой. Так же это значит, что при изменении формата одного из символов могут измениться и некоторые значения метрик.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextLineMetrics; import flash.text.TextFieldAutoSize; import flash.text.AntiAliasType; import flash.text.TextFormat; public class TextField_getLineMetricsExample extends Sprite { public function TextField_getLineMetricsExample() { var myTextField:TextField = new TextField(); var newFormat:TextFormat = new TextFormat(); myTextField.x = 10; myTextField.y = 10; myTextField.background = true; myTextField.wordWrap = false; myTextField.autoSize = TextFieldAutoSize.LEFT; myTextField.appendText("A child said What is the grass? fetching it to me with full hands;\n"); myTextField.appendText("How could I answer the child? I do not know what it is any more than he.\n\n"); newFormat.size = 14; newFormat.font = "Arial"; newFormat.italic = true; myTextField.setTextFormat(newFormat, 67, 139); var metrics1:TextLineMetrics = myTextField.getLineMetrics(0); myTextField.appendText("Metrics ascent for the line 1 is: " + metrics1.ascent.toString() + "\n"); myTextField.appendText("Metrics descent is: " + metrics1.descent.toString() + "\n"); myTextField.appendText("Metrics height is: " + metrics1.height.toString() + "\n"); myTextField.appendText("Metrics width is: " + metrics1.width.toString() + "\n\n"); var metrics2:TextLineMetrics = myTextField.getLineMetrics(1); myTextField.appendText("Metrics ascent for the line 2 is: " + metrics2.ascent.toString() + "\n"); myTextField.appendText("Metrics descent is: " + metrics2.descent.toString() + "\n"); myTextField.appendText("Metrics height is: " + metrics2.height.toString() + "\n"); myTextField.appendText("Metrics width is: " + metrics2.width.toString() + "\n"); addChild(myTextField); } } }
getLineOffset | () | метод |
public function getLineOffset(lineIndex:int):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает индекс первого символа в строке, заданной параметром lineIndex
.
Параметры
lineIndex:int — Отсчитываемое от нуля значение индекса для строки (например, первая строка — 0, вторая строка — 1 и т.д.).
|
int — Отсчитываемое от нуля значение индекса для первого символа в строке.
|
Выдает
RangeError — Заданный номер строки находится за пределами диапазона.
|
Пример ( Использование этого примера )
Для текстового поля myTextField
разрешается перенос слов. В текстовом поле countField
будет отображаться первый символ строки 4. Когда пользователь щелкает текстовое поле myTextField
, вызывается метод clickHandler()
.
В методе clickHandler()
метод getLineOffset()
возвращает индекс первого символа в строке с индексом 3, которая является четвертой строкой текста. (Первая строка имеет индекс 0.) Метод charAt()
используется для получения символа на основе индекса первого символа четвертой строки. Содержимое countField
обновляется этой информацией с помощью свойстваtext
текстового поляcountField
. Использование свойства countField.text
означает, что после каждого щелчка мыши содержимое текстового поля countField
будет переписываться. Если пользователь изменит размер экрана, содержимое будет перенесено, и первый символ строки 4 может измениться. При повторном щелчке по полю myTextField
содержимое текстового поля countField
обновляется, отображая новый первый символ четвертой строки.
package { import flash.display.Sprite; import flash.text.TextField; import flash.events.MouseEvent; public class TextField_getLineOffsetExample extends Sprite { private var myTextField:TextField = new TextField(); private var countField:TextField = new TextField(); public function TextField_getLineOffsetExample() { myTextField.x = 10; myTextField.y = 10; myTextField.width = 150; myTextField.height = 300; myTextField.background = true; myTextField.border = true; myTextField.wordWrap = true; countField.height = 20; countField.width = 200; countField.x = 10; countField.y = 320; countField.selectable = false; myTextField.appendText("The TextField class is used to create display objects for " + "text display and input. All dynamic and input text fields in a SWF file " + "are instances of the TextField class. You can use the TextField class " + "to perform low-level text rendering. However, in Flex, you typically use " + "the Label, Text, TextArea, and TextInput controls to process text. " + "You can give a text field an instance name in the Property inspector " + "and use the methods and properties of the TextField class to manipulate it with ActionScript."); myTextField.addEventListener(MouseEvent.CLICK, clickHandler); this.addChild(myTextField); this.addChild(countField); } private function clickHandler(e:MouseEvent):void { var c:String; var index:int; index = myTextField.getLineOffset(3); c = myTextField.text.charAt(index); countField.text = "The first character of line 4 is: " + c; } } }
getLineText | () | метод |
public function getLineText(lineIndex:int):String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает текст строки, заданной параметром lineIndex
.
Параметры
lineIndex:int — Отсчитываемое от нуля значение индекса для строки (например, первая строка — 0, вторая строка — 1 и т. д.).
|
String — Текстовая строка, содержащаяся в заданной строке.
|
Выдает
RangeError — Заданный номер строки находится за пределами диапазона.
|
Пример ( Использование этого примера )
Для текстового поля poem
задано автоматическое соответствие тексту и изменение размера с выравниванием по левому краю. Свойству wordWrap
задано значение false
, чтобы строки стихотворения не переносились, хотя обычно при использовании свойства autoSize
это не вызывает проблем. Цикл for
повторяет процедуру для всех строк сонета с использованием свойства numLines
текстового поля. Метод getLineText()
возвращает содержимое строки в виде строкового значения. (Обратите внимание, что свойство numLines
возвращает количество строк, начиная со строки 1, а метод getLineText()
начинает отсчет строк с 0.) С помощью регулярного выражения (/love/i
) оператор if
ищет любую подстроку слова, написанного заглавными и строчными буквами. Если слово обнаружено, метод search
возвращает индекс первой соответствующей подстроки, в противном случае он возвращает значение -1
(если соответствий не найдено). Строка, в которой найдено слово love ((i + 1)
) помещается в строковое значение lineResult
. Метод string преобразует аргумент номера ((i + 1)
) в строковое значение, если присутствует другой строковый аргумент (" "). Результат поиска будет включать строки со словами loved или Love's. Если перед циклом for
была добавлена строка «Слово love найдено в строках:», то слово Love в этой строке также будет включено в результат.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.utils.Timer; import flash.events.TimerEvent; public class TextField_getLineTextExample extends Sprite { public function TextField_getLineTextExample() { var poem:TextField = new TextField(); var lineResult:String = ""; var pattern:RegExp = /love/i; poem.x = 10; poem.y = 10; poem.background = true; poem.wordWrap = false; poem.autoSize = TextFieldAutoSize.LEFT; poem.text = "Let me not to the marriage of true minds\n" + "Admit impediments. love is not love\n" + "Which alters when it alteration finds\n" + "Or bends with the remover to remove:\n" + "O no! it is an ever-fixed mark\n" + "That looks on tempests and is never shaken;\n" + "It is the star to every wandering bark,\n" + "Whose worth's unknown, although his height be taken.\n" + "Love's not Time's fool, though rosy lips and cheeks\n" + "Within his bending sickle's compass come:\n" + "Love alters not with his brief hours and weeks,\n" + "But bears it out even to the edge of doom.\n" + "If this be error and upon me proved,\n" + "I never writ, nor no man ever loved.\n\n"; for (var i:int = 0; i < poem.numLines; i++) { var s:String = poem.getLineText(i); if(s.search(pattern) != -1) { lineResult += (i + 1) + " "; } } poem.appendText("Love was found in lines: " + lineResult); this.addChild(poem); } } }
getParagraphLength | () | метод |
public function getParagraphLength(charIndex:int):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Используя полученный индекс символа, возвращает длину абзаца, содержащего этот символ. Длина отсчитывается от первого символа в абзаце (возвращенного методом getFirstCharInParagraph()
), а не от переданного индекса символа.
Параметры
charIndex:int — Отсчитываемое от нуля значение индекса для символа (например, первый символ — 0, второй символ — 1 и т. д.).
|
int — Возвращает количество символов в абзаце.
|
Выдает
RangeError — Указанный индекс символа находится за пределами диапазона.
|
Связанные элементы API
Пример ( Использование этого примера )
В текстовом поле myTextField
отображаются абзацы, которые будет выбирать пользователь. При щелчке по текстовому полю отправляется событие MouseEvent.CLICK
, и вызывается метод clickHandler()
. Длина абзаца и количество символов s будут отображаться в текстовом поле countField
, расположенном под полем myTextField
.
В методе clickHandler()
метод getCharIndexAtPoint()
возвращает индекс символа на основе координат localX
и localY
щелчка мыши. Первая инструкция if
проверяет, щелкнул ли пользователь по символу. Метод getFirstCharInParagraph()
использует этот индекс, чтобы получить индекс первого символа в том же абзаце. Длина абзаца, возвращенная методом getParagraphLength()
, используется вместе с индексом первого символа в абзаце для определения индекса последнего символа. Цикл for
повторяет операцию поиска и подсчета символов s в абзаце.
package { import flash.display.Sprite; import flash.text.TextField; import flash.events.MouseEvent; public class TextField_getParagraphLengthExample extends Sprite { private var myTextField:TextField = new TextField(); private var countField:TextField = new TextField(); public function TextField_getParagraphLengthExample() { myTextField.x = 10; myTextField.y = 10; myTextField.background = true; myTextField.border = true; myTextField.wordWrap = true; myTextField.width = 300; myTextField.height = 280; myTextField.appendText("The TextField class is used to create display objects for " + "text display and input. All dynamic and input text fields in a SWF file" + "are instances of the TextField class. You can use the TextField class " + "to perform low-level text rendering. However, in Flex, you typically use " + "the Label, Text, TextArea, and TextInput controls to process text. " + "You can give a text field an instance name in the Property inspector " + "and use the methods and properties of the TextField class to manipulate it with ActionScript. " + "TextField instance names are displayed in the Movie Explorer and in the Insert " + "Target Path dialog box in the Actions panel.\n\n" + "To create a text field dynamically, use the TextField() constructor.\n\n" + "The methods of the TextField class let you set, select, and manipulate " + "text in a dynamic or input text field that you create during authoring or at runtime."); myTextField.addEventListener(MouseEvent.CLICK, clickHandler); countField.x = 10; countField.y = 300; countField.height = 50; countField.width = 250; countField.background = true; countField.selectable = false; this.addChild(myTextField); this.addChild(countField); } private function clickHandler(e:MouseEvent):void { var index:int = myTextField.getCharIndexAtPoint(e.localX, e.localY); if(index != -1) { var beginParag:int = myTextField.getFirstCharInParagraph(index); var paragLength:int = myTextField.getParagraphLength(index); var endParag:int = beginParag + paragLength; var sCount:uint = 0; for (var i:int = beginParag; i <= endParag; i++) { if ((myTextField.text.charAt(i) == "s") || (myTextField.text.charAt(i) == "S")) { sCount++; } countField.text = "Paragraph length is: " + paragLength.toString() + "\n" + "Number of 's' characters in the paragraph: " + sCount.toString(); } } } } }
getTextFormat | () | метод |
public function getTextFormat(beginIndex:int = -1, endIndex:int = -1):flash.text:TextFormat
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Возвращает объект TextFormat, содержащий данные о форматировании для фрагмента текста, заданного параметрами beginIndex
и endIndex
. В полученном объекте TextFormat задаются только свойства, используемые для всего заданного текста. Смешанные свойства (те, которые имеют разные значения для разных участков текста) имеют значение null
.
Если не задать значения для этих параметров, то метод применяется ко всему содержимому текстового поля.
В следующей таблице описываются три способа применения.
Применение | Описание |
---|---|
my_textField.getTextFormat() | Возвращает объект TextFormat, содержащий информацию о форматировании для всего содержимого текстового поля. В полученном объекте TextFormat задаются только свойства, используемые для всего текста в текстовом поле. Смешанные свойства (те, которые имеют разные значения для разных участков текста) имеют значение null . |
my_textField.getTextFormat(beginIndex:Number) | Возвращает объект TextFormat, содержащий копию формата текста для символа в положении beginIndex . |
my_textField.getTextFormat(beginIndex:Number,endIndex:Number) | Возвращает объект TextFormat, содержащий информацию о форматировании для фрагмента текста от beginIndex до endIndex-1 . В полученном объекте TextFormat задаются только свойства, используемые для всего заданного текста. Смешанные свойства (те, которые имеют разные значения для разных участков выбранного текста) имеют значение null . |
Параметры
beginIndex:int (default = -1 ) — Необязательно; целое число, указывающее начальное положение фрагмента текста в текстовом поле.
| |
endIndex:int (default = -1 ) — Необязательно: целое число, указывающее положение первого символа после нужного фрагмента текста. В соответствии с дизайном, если задать значения beginIndex и endIndex , считывается текст с beginIndex по endIndex-1 .
|
flash.text:TextFormat — Объект TextFormat, представляющий свойства форматирования для указанного текста.
|
Выдает
RangeError — Заданный параметр beginIndex или endIndex находится за пределами диапазона.
|
Связанные элементы API
Пример
Использование этого примера
См. примеры метода getFirstCharInParagraph() или setTextFormat(), иллюстрирующие использование
getTextFormat()
.
isFontCompatible | () | метод |
public static function isFontCompatible(fontName:String, fontStyle:String):Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает значение true, если доступен встроенный шрифт с указанными свойствами fontName
и fontStyle
, где Font.fontType
— это flash.text.FontType.EMBEDDED
. Начиная с Flash Player 10, SWF-файле могут отображаться два вида встроенных шрифтов. Обычные встроенные шрифты используются только с объектами TextField. Встроенные шрифты CFF используются только с классами flash.text.engine. Два типа различаются свойством fontType
класса Font
, возвращенным функцией enumerateFonts()
.
Объект TextField не может использовать шрифт типа EMBEDDED_CFF
. Если свойство embedFonts
имеет значение true
и в среде выполнения единственным доступным шрифтом с заданным именем и стилем является шрифт типа EMBEDDED_CFF
, Flash Player не визуализирует текст, как если бы встроенного шрифта с заданным именем и стилем не было.
Если имеются шрифты EMBEDDED
и EMBEDDED_CFF
с одинаковым именем и стилем, выбирается шрифт типа EMBEDDED
и используется для визуализации текста с помощью шрифта EMBEDDED
.
Параметры
fontName:String — Имя проверяемого встроенного шрифта.
| |
fontStyle:String — Задает стиль шрифта для проверки. Используйте flash.text.FontStyle
|
Boolean — Значение true , если доступен совместимый встроенный шрифт, в противном случае, значение — false .
|
Выдает
ArgumentError — Заданное свойство fontStyle не является членом flash.text.FontStyle .
|
Связанные элементы API
replaceSelectedText | () | метод |
public function replaceSelectedText(value:String):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Заменяет текущий выделенный фрагмент содержимым параметра value
. Текст вставляется в положении текущего выделенного фрагмента с использованием текущих форматов символов и абзаца по умолчанию. Текст обрабатывается не как HTML.
Можно использовать метод replaceSelectedText()
для вставки и удаления текста без нарушения форматирования символов и абзацев остальной части текста.
Примечание. Этот метод не работает, если к текстовому полю применена таблица стилей.
Параметры
value:String — Строка для замены текущего выделенного текста.
|
Выдает
Error — Этот метод невозможно использовать для текстового поля с таблицей стилей.
|
Связанные элементы API
Пример ( Использование этого примера )
Создаются два разных объекта TextField, к которым добавляются два прослушивателя события MouseEvent.MOUSE_UP
. Это событие (подъем мыши) происходит, когда пользователь отпускает кнопку мыши, что обычно бывает после выделения текста. Обратите внимание, что по умолчанию текстовое поле допускает выделение текста.
Метод mouseHandler1()
стирает выделенный текст, заменяя его пустой строкой, когда пользователь отпускает кнопку мыши в текстовом поле myTextField1
. Это может продолжаться, пока не будет удален весь текст. Когда пользователь выделяет текст в текстовом поле myTextField2
, метод mouseHandler2()
проверяет свойства selectionBeginIndex
и selectionEndIndex
, чтобы определить, выделены ли символы. (Свойства selectionBeginIndex
и selectionEndIndex
имеют разное значение при выделении текста.) После этого выделенный текст заменяется строкой «NEW TEXT». Это может продолжаться до тех пор, пока весь исходный текст во втором текстовом поле не будет заменен строкой NEW TEXT.
package { import flash.display.Sprite; import flash.text.TextField; import flash.events.MouseEvent; public class TextField_replaceSelectedTextExample extends Sprite { private var myTextField1:TextField = new TextField(); private var myTextField2:TextField = new TextField(); public function TextField_replaceSelectedTextExample() { myTextField1.x = 10; myTextField1.width = 300; myTextField1.height = 50; myTextField1.background = true; myTextField1.border = true; myTextField1.text = "Select the text you want to remove from the line."; myTextField2.x = 10; myTextField2.y = 60; myTextField2.width = 300; myTextField2.height = 50; myTextField2.background = true; myTextField2.border = true; myTextField2.text = "Select the text you want to replace with NEW TEXT."; myTextField1.addEventListener(MouseEvent.MOUSE_UP, mouseHandler1); myTextField2.addEventListener(MouseEvent.MOUSE_UP, mouseHandler2); this.addChild(myTextField1); this.addChild(myTextField2); } private function mouseHandler1(e:MouseEvent):void { myTextField1.replaceSelectedText(""); } private function mouseHandler2(e:MouseEvent):void { if(myTextField2.selectionBeginIndex != myTextField2.selectionEndIndex) { myTextField2.replaceSelectedText("NEW TEXT"); } } } }
replaceText | () | метод |
public function replaceText(beginIndex:int, endIndex:int, newText:String):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Заменяет диапазон символов, заданный параметрами beginIndex
и endIndex
, содержанием параметра newText
. Согласно плану, заменяется текст от beginIndex
до endIndex-1
.
Примечание. Этот метод не работает, если к текстовому полю применена таблица стилей.
Параметры
beginIndex:int — Отсчитываемое от нуля значение индекса для начального положения диапазона замены.
| |
endIndex:int — Отсчитываемая от нуля позиция индекса первого символа после требуемого фрагмента текста.
| |
newText:String — Текст для замены заданного диапазона символов.
|
Выдает
Error — Этот метод невозможно использовать для текстового поля с таблицей стилей.
|
Пример ( Использование этого примера )
replaceText()
для удаления, замены и вставки текста в текстовое поле.
Для текстового поля outputText
задано автоматическое соответствие размерам текста и изменение размера с выравниванием по левому краю. Первый вызов метода replaceText()
заменяет первую строку (This is the wrong heading (Это неправильный заголовок)) текстом THIS IS THE HEADING FOR EVERYONE (ЭТО ЗАГОЛОВОК ДЛЯ ВСЕХ). Второй вызов метода вставляет слово CORRECT (ПРАВИЛЬНЫЙ) между THE и HEADING. Третий вызов метода удаляет слова FOR EVERYONE. Обратите внимание, что при каждом вызове методаappendText()
изменяются текущие начальный и конечный индексы текста. Здесь будет отображаться только окончательный текст (после всех изменений).
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; public class TextField_replaceTextExample extends Sprite { public function TextField_replaceTextExample() { var outputText:TextField = new TextField(); outputText.x = 10; outputText.y = 10; outputText.background = true; outputText.autoSize = TextFieldAutoSize.LEFT; outputText.appendText("This is the wrong heading"); outputText.appendText("\n\n"); outputText.appendText("This is the body of the text."); outputText.replaceText(0, 25, "THIS IS THE HEADING FOR EVERYONE"); outputText.replaceText(12, 12, "CORRECT "); outputText.replaceText(27, 40, ""); this.addChild(outputText); } } }
setSelection | () | метод |
public function setSelection(beginIndex:int, endIndex:int):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Задает способ разметки текста с помощью индексов первого и последнего символов, которые указываются параметрами beginIndex
и endIndex
Если два параметра имеют одинаковые значения, этот метод задает точку вставки, как при использовании свойства caretIndex
.
Параметры
beginIndex:int — Отсчитываемое от нуля значение индекса для выделенного символа (например, первый символ — 0, второй символ — 1 и т.д.).
| |
endIndex:int — Отсчитываемое от нуля значение индекса для последнего символа в выделенном фрагменте.
|
Связанные элементы API
Пример ( Использование этого примера )
Два прослушивателя событий для текстового поля myTextField
реагируют на щелчки и подъем мыши. Подъем мыши происходит, когда пользователь отпускает кнопку мыши, что обычно бывает после выделения текста. Обратите внимание, что по умолчанию текстовое поле допускает выделение текста. При щелчке по тексту вызывается метод clickHandler()
. Когда мышь отпускается после выделения текста, вызывается метод mouseUpHandler()
.
И в clickHandler()
и в mouseUpHandler()
метод setSelection()
задает для выделения только символы между индексами 54 и 70 (ТЕКСТ ЗАГЛАВНЫМИ БУКВАМИ).
package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.text.TextField; import flash.text.TextFieldAutoSize; public class TextField_setSelectionExample extends Sprite { private var myTextField:TextField = new TextField(); public function TextField_setSelectionExample() { myTextField.autoSize = TextFieldAutoSize.LEFT; myTextField.text = "No matter where you click on this text field only the TEXT IN ALL CAPS is selected."; myTextField.addEventListener(MouseEvent.CLICK, clickHandler); myTextField.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); this.addChild(myTextField); } private function clickHandler(event:MouseEvent):void { myTextField.setSelection(54, 70); } private function mouseUpHandler(event:MouseEvent):void { myTextField.setSelection(54, 70); } } }
setTextFormat | () | метод |
public function setTextFormat(format:flash.text:TextFormat, beginIndex:int = -1, endIndex:int = -1):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Применяет форматирование текста, заданное параметром format
, к указанному содержимому текстового поля. Значением параметра format
должен быть объект TextFormat, определяющий необходимые изменения формата текста. К текстовому полю применяются только ненулевые свойства format
. Свойства параметра format
, имеющие значение null
, не применяются. По умолчанию все свойства вновь созданного объекта TextFormat имеют значение null
.
Примечание. Этот метод не работает, если к текстовому полю применена таблица стилей.
Метод setTextFormat()
изменяет форматирование текста, применяемое к диапазону символов или ко всему содержимому текстового поля. Чтобы применить свойства формата ко всему тексту в текстовом поле, не нужно задавать значения для beginIndex
и endIndex
. Чтобы применить свойства формата к фрагменту текста, задайте значения для параметров beginIndex
и endIndex
. Для определения значений индекса можно использовать свойство length
.
Объект TextFormat содержит два типа информации о форматировании: форматирование символов и форматирование абзацев. Каждый символ в текстовом поле может иметь собственные параметры формата символов, такие как имя и размер шрифта, полужирное или курсивное начертание.
Для абзацев параметры форматирования всего абзаца определяются по его первому символу. В качестве примера можно назвать такие параметры форматирования, как левое, правое поле и отступ.
Любой текст, вставленный пользователем вручную или замененный методом replaceSelectedText()
, получает форматирование текстового поля по умолчанию для нового текста, а не то, которое задано для точки вставки текста. Форматирование по умолчанию для нового текста задается с помощью свойства defaultTextFormat
.
Параметры
format:flash.text:TextFormat — Объект TextFormat, содержащий информацию о форматировании символов и абзацев.
| |||||||||
beginIndex:int (default = -1 ) — Необязательно; целое число, указывающее отсчитываемую от нуля позицию индекса, определяющую первый символ требуемого фрагмента текста.
| |||||||||
endIndex:int (default = -1 ) — Необязательно; целое число, указывающее первый символ после требуемого фрагмента текста. В соответствии с планом, если задать значения beginIndex и endIndex , обновляется текст с beginIndex по endIndex-1 .
Обратите внимание, что текст, вставленный пользователем вручную или замененный методом |
Выдает
Error — Этот метод невозможно использовать для текстового поля с таблицей стилей.
| |
RangeError — Заданный параметр beginIndex или endIndex находится за пределами диапазона.
|
Связанные элементы API
Пример ( Использование этого примера )
Добавляется прослушиватель событий для текстового поля myTextField
, который реагирует на щелчки мышью, вызывая метод clickHandler()
. В методе clickHandler()
метод getTextFormat()
возвращает текущий формат символа (индекс 55) из заданного фрагмента текста, который затем помещается в объект TextFormat с именем currentTextFormat
. Инструкция if
проверяет формат текста currentTextFormat
, чтобы узнать, использует ли символ заданного диапазона новый формат (с размером шрифта 18). Если нет, новый формат изменяет размер на 18, задает красный цвет, а также применяет подчеркивание и курсив к диапазону символов 54-70 (ТЕКСТ ЗАГЛАВНЫМИ БУКВАМИ). Если символ в диапазоне использует новый формат, то формат диапазона возвращается к исходному формату по умолчанию для данного текстового поля.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFormat; import flash.text.TextFieldAutoSize; import flash.events.MouseEvent; public class TextField_setTextFormatExample extends Sprite { private var myTextField:TextField = new TextField(); private var newFormat:TextFormat = new TextFormat(); public function TextField_setTextFormatExample() { myTextField.autoSize = TextFieldAutoSize.LEFT; myTextField.selectable = false; myTextField.background = true; myTextField.text = "No matter where you click on this text field only the TEXT IN ALL CAPS changes format."; myTextField.addEventListener(MouseEvent.CLICK, clickHandler); newFormat.color = 0xFF0000; newFormat.size = 18; newFormat.underline = true; newFormat.italic = true; this.addChild(myTextField); } private function clickHandler(event:MouseEvent):void { var currentTextFormat:TextFormat = myTextField.getTextFormat(55); if(currentTextFormat.size != 18) { myTextField.setTextFormat(newFormat, 54, 70); } else { myTextField.setTextFormat(myTextField.defaultTextFormat); } } } }
change | Событие |
flash.events.Event
свойство Event.type =
flash.events.Event.CHANGE
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Отправляется после изменения значения элемента управления, в отличие от события textInput
, которое отправляется перед изменением значения. В отличие от события change
версии W3C DOM Event Model, которое отправляет событие только после перехода фокуса с элемента управления, событие change
версии ActionScript 3.0 отправляется при каждом изменении элемента управления. Например, если пользователь вводит текст в текстовое поле, то событие change
отправляется после каждого нажатия клавиши.
Event.CHANGE
определяет значение свойства type
объекта события change
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | true |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
currentTarget | Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. |
target | Объект, значение которого было изменено. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент. |
Пример ( Использование этого примера )
Создается два текстовых поля: одно для пользовательского ввода, а другое (headingTextField
) для его копии. Также создается объект TextFormat, и текстовому полю headingTextField
назначается формат текста по умолчанию. При изменении содержимого текстового поля вызывается метод changeHandler()
, который назначает текст в полеinputTextField
текстовому полюheadingTextField
. (Если метод был вызван для события TextEvent.TEXT_INPUT
, а не для события Event.CHANGE
, содержимое пользовательского ввода копируется только после того, как пользователь введет больше текста.)
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldType; import flash.text.TextFormat; import flash.text.TextFormatAlign; import flash.events.Event; import flash.events.TextEvent; public class TextField_Event_changeExample extends Sprite { private var inputTextField:TextField = new TextField(); private var headingTextField:TextField = new TextField(); private var newFormat:TextFormat = new TextFormat(); public function TextField_Event_changeExample() { headingTextField.x = 10; headingTextField.y = 10; headingTextField.height = 30; headingTextField.width = 400; headingTextField.background = true; headingTextField.backgroundColor = 0xF5F5DC; headingTextField.selectable = false; inputTextField.x = 10; inputTextField.y = 70; inputTextField.height = 20; inputTextField.width = 230; inputTextField.background = true; inputTextField.border = true; inputTextField.maxChars = 40; inputTextField.wordWrap = true; inputTextField.type = TextFieldType.INPUT; inputTextField.addEventListener(Event.CHANGE, changeHandler); newFormat.bold = true; newFormat.size = 18; newFormat.color = 0xFF0000; newFormat.align = TextFormatAlign.CENTER; headingTextField.defaultTextFormat = newFormat; this.addChild(inputTextField); this.addChild(headingTextField); } private function changeHandler(e:Event):void { headingTextField.text = inputTextField.text; } } }
link | Событие |
flash.events.TextEvent
свойство TextEvent.type =
flash.events.TextEvent.LINK
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Передается, когда пользователь щелкает в текстовом поле с поддержкой HTML гиперссылку, в которой URL-адрес начинается с event:. Часть URL-адреса после event: помещается в свойство text события LINK.
Примечание. Поведение по умолчанию (добавление текста в текстовое поле) происходит только тогда, когда проигрыватель Flash Player генерирует событие, что в данном случае имеет место, когда пользователь пытается ввести текст. Нельзя ввести текст в текстовое поле, отправляя ему события textInput
.
type
для объекта события link
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | true |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
currentTarget | Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. |
target | Текстовое поле, содержащее гиперссылку, по которой щелкнул пользователь. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент. |
text | Оставшаяся часть URL-адреса после event: |
Пример ( Использование этого примера )
playMP3()
. Создается объект TextField с именем list
, который заполняется HTML-текстом. Текст Track 1
(Трек 1) и Track 2
являются ссылками внутри текстового поля. Когда пользователь щелкает любую из ссылок, вызывается функция playMP3(). Имя файла MP3, которое идет после строки event: в атрибуте href
тега HTML, передается методу linkHandler()
в качестве свойства text
объекта события link
.
package { import flash.display.Sprite; import flash.errors.IOError; import flash.events.IOErrorEvent; import flash.events.TextEvent; import flash.media.Sound; import flash.media.SoundChannel; import flash.net.URLRequest; import flash.text.TextField; import flash.text.TextFieldAutoSize; public class TextField_event_link extends Sprite { private var myMP3:Sound; public function TextField_event_link() { myMP3 = new Sound(); var list:TextField = new TextField(); list.autoSize = TextFieldAutoSize.LEFT; list.multiline = true; list.htmlText = "<a href=\"event:track1.mp3\">Track 1</a><br>"; list.htmlText += "<a href=\"event:track2.mp3\">Track 2</a><br>"; addEventListener(TextEvent.LINK, linkHandler); addChild(list); } private function playMP3(mp3:String):void { try { myMP3.load(new URLRequest(mp3)); myMP3.play(); } catch(err:Error) { trace(err.message); } myMP3.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); } private function linkHandler(linkEvent:TextEvent):void { playMP3(linkEvent.text); } private function errorHandler(errorEvent:IOErrorEvent):void { trace(errorEvent.text); } } }
scroll | Событие |
flash.events.Event
свойство Event.type =
flash.events.Event.SCROLL
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Отправляется объектом TextField, когда пользователь выполняет прокрутку.
КонстантаEvent.SCROLL
определяет значение свойства type
объекта события scroll
.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | false |
cancelable | false ; поведение по умолчанию, подлежащее отмене, не определено. |
currentTarget | Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. |
target | Прокручиваемый объект TextField. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент. |
Пример ( Использование этого примера )
mouseDown
и вызывается связанный с ним обработчик mouseDownScroll
. Обработчик mouseDownScroll()
инициирует прокручивание поля. Затем отправляется событие scroll
, и связанный обработчик scrollHandler()
обновляет второе текстовое поле, так чтобы в нем отображалась текущее положение прокрутки.
package { import flash.display.Sprite; import flash.text.*; import flash.events.Event; import flash.events.TextEvent; import flash.events.MouseEvent; public class TextScrollExample extends Sprite { private var myTextBox1:TextField = new TextField(); private var myTextBox2:TextField = new TextField(); private var myText:String = "Hello world and welcome to the show. It's really nice to meet you. Take your coat off and stay a while. OK, show is over. Hope you had fun. You can go home now. Don't forget to tip your waiter. There are mints in the bowl by the door. Thank you. Please come again."; public function TextScrollExample() { myTextBox1.text = myText; myTextBox1.width = 200; myTextBox1.height = 50; myTextBox1.multiline = true; myTextBox1.wordWrap = true; myTextBox1.background = true; myTextBox1.border = true; myTextBox2.x=220; myTextBox2.text="scrolled to line: " + myTextBox1.scrollV; addChild(myTextBox1); addChild(myTextBox2); myTextBox1.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownScroll); myTextBox1.addEventListener(Event.SCROLL, scrollHandler); } public function mouseDownScroll(event:MouseEvent):void { myTextBox1.scrollV++; } public function scrollHandler(event:Event):void { myTextBox2.text="scrolled to line: " + myTextBox1.scrollV; } } }
textInput | Событие |
flash.events.TextEvent
свойство TextEvent.type =
flash.events.TextEvent.TEXT_INPUT
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Flash Player отправляет событие textInput
, когда пользователь вводит один или несколько символов текста. Это событие может генерироваться различными методами ввода текста, включая стандартную клавиатуру, редакторы ввода текста (IME), системы распознавания голоса и речи и даже просто вставкой обычного текста без форматирования или информации о стилях.
type
для объекта события textInput
.
Примечание. Это событие не отправляется для клавиш Delete или Backspace.
Это событие имеет следующие свойства:
Свойство | Значение |
---|---|
bubbles | true |
cancelable | true ; вызовите метод preventDefault() для отмены поведения по умолчанию. |
currentTarget | Объект, активно обрабатывающий объект Event с помощью прослушивателя событий. |
target | Текстовое поле, в которое вводятся символы. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент. |
text | Символ или последовательность символов, введенных пользователем. |
Пример ( Использование этого примера )
textInput
, вызывается обработчик textInputHandler()
, и символы отображаются во втором текстовом поле. При вставке блока текста в поле ввода, обработчик события копирует весь блок во второе поле.
package { import flash.display.Sprite; import flash.text.*; import flash.events.Event; import flash.events.TextEvent; import flash.events.MouseEvent; public class TextInputExample extends Sprite { private var myTextBox1:TextField = new TextField(); private var myTextBox2:TextField = new TextField(); public function TextInputExample() { myTextBox1.type = TextFieldType.INPUT; myTextBox1.width = 200; myTextBox1.height = 20; myTextBox1.background = true; myTextBox1.border = true; myTextBox2.x=220; addChild(myTextBox1); addChild(myTextBox2); myTextBox1.addEventListener(TextEvent.TEXT_INPUT,textInputHandler); } public function textInputHandler(event:TextEvent):void { myTextBox2.text=event.text; } } }
textInteractionModeChange | Событие |
flash.events.Event
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 11, Flash Lite 4 |
Flash Player отправляется textInteractionModeChange
событие, когда смены пользователя режим взаимодействия текстового поля. например на Андроиде, можно переключить от НОРМАЛЬНОГО режима до параметров контекстного меню использования РЕЖИМА ВЫДЕЛЕНИЯ
TextFieldExample
используется для отображения текстового сообщения. Для этого выполняются следующие действия.
- Создается свойство
label
типа TextField. - Конструктор класса вызывает функцию
configureLabel()
. - Метод
configureLabel()
сначала создает новый объект TextField и назначает его свойствуlabel
, а затем задает для него следующие параметры:- Полная выключка текстового поля по левому краю.
- Включить заливку фона.
- Включить рамку
- Метод
configureLabel()
создает переменнуюformat
и назначает ее новому экземпляру TextFormat, задав следующие параметры:- Font type = Verdana
- Font color = solid red
- Font size = 10
- Font underline = true
- Свойство
defaultTextFormat
текстового поляlabel
получает значениеformat
, и экземплярlabel
добавляется в список отображения, который сначала показывает на монтажном столе текстовое поле без текста. - Конструктор задает для текстового поля
label
текстHello world and welcome to the show.
(Здравствуйте все и добро пожаловать на представление), вызвав методsetLabel()
.
package { import flash.display.Sprite; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.text.TextFormat; public class TextFieldExample extends Sprite { private var label:TextField; private var labelText:String = "Hello world and welcome to the show."; public function TextFieldExample() { configureLabel(); setLabel(labelText); } public function setLabel(str:String):void { label.text = str; } private function configureLabel():void { label = new TextField(); label.autoSize = TextFieldAutoSize.LEFT; label.background = true; label.border = true; var format:TextFormat = new TextFormat(); format.font = "Verdana"; format.color = 0xFF0000; format.size = 10; format.underline = true; label.defaultTextFormat = format; addChild(label); } } }
Tue Jun 12 2018, 11:34 AM Z