Создание и отображение текста
Текстовые поля Отображение и ввод текста Набор возможностей API для работы с текстом можно разбить на следующие общие категории: · управление текстом, отображаемым на экране; · форматирование текста; · установка параметров отображения текста для модуля FlashType; · управление шрифтами (например, определение доступных шрифтов); · получение метрик текста (характеристик); · предоставление константных значений. Все классы API для работы с текстом находятся в пакете flash.text. Таблица 1. Обзор API для работы с текстом
В таблице 2 представлен краткий обзор классов API для работы с текстом, которые просто обеспечивают доступ к специальным значениям через константы класса.
Таблица 2. Классы API для работы с текстом, содержащие константные значения
Создание и отображение текста
Чтобы отобразить текст с помощью ActionScript, сначала создается объект класса TextField. Этот объект представляет прямоугольный текстовый контейнер, который может отображаться на экране и заполняться форматированным текстом через код или пользовательский ввод. Создать объект класса TextField с именем t: var t:TextField = new TextField(); Обратиться к тексту текстового поля можно посредством свойства text: t.text = "Hello world"; Добавление в список отображения для отображения на экране: некийКонтейнер.addChild (t); Пример 1. Отображение текста package { import flash.display.*; import flash.text.*; // Импортируем класс TextField и другие классы, // размещенные в пакете flash.text public class Example extends Sprite { public function Example () { // Создаем объект TextField var t:TextField = new TextField(); // Указываем текст для отображения t.text = "Hello world"; // Добавляем объект TextField в список отображения addChild(t); t.x = 200; t.y = 100; } } } Ширина и высота прямоугольной области отображения текстового поля могут быть указаны явно с помощью свойств width и height класса Text Field: t.width = 200; t.height = 50; По умолчанию прямоугольная область отображения поля не показывается на экране. Тем не менее можно сделать ее видимой, присвоив свойствам background и border класса TextFie l d значение true. Свойство background определяет, требуется ли заливка прямоугольной области отображения текстового поля сплошным цветом. Свойство border указывает, нужно ли показывать линию толщиной 1 пиксел вокруг прямоугольной области отображения текстового поля. Цвет фона и границы задаются путем присваивания 24-битных значений RGB-цвета свойствам backgroundColor и borderColor.
Пример 2. Отображение текста с границей и фоном. package { import flash.display.*; import flash.text.*; // Импортируем класс TextField и другие классы, // размещенные в пакете flash.text public class Example extends Sprite { public function Example() { var t:TextField = new TextField(); // Создаем объект TextField t.text = "Hello world"; // Указываем текст // для отображения t.background = true; // Включаем отображение фона t.backgroundColor = 0хСССССС; // В качестве цвета фона указываем // светло-серый цвет t.border = true; // Включаем отображение границы t.borderColor = 0x333333; // В качестве цвета границы указываем // темно-серый цвет addChild(t); // Добавляем объект TextField в список отображения } } } Перенос слов По умолчанию, когда ширина текста в текстовом поле оказывается больше ширины прямоугольной области отображения этого текстового поля, текст, выходящий за пределы данной области, теряется из виду. Чтобы предотвратить скрытие текста, ширина которого оказывается больше ширины прямоугольной области отображения текстового поля, можно включить возможность автоматического добавления разрывов строк в текстовом поле, присвоив свойству wordWrap класса TextFie l d значение true. Когда возможность автоматического добавления разрывов строк включена, происходит мягкий перенос длинных строк текста, то есть любая строка, ширина которой оказывается больше ширины прямоугольной области отображения данного текстового поля, будет автоматически перенесена на следующую строку. Например, следующий код включает возможность автоматического добавления разрывов строк для объекта TextField t: t. wordWrap = true;
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|