Microsoft Visual J++. Создание приложений и аплетов на языке Java. Часть 1© Александр Фролов, Григорий ФроловТом 30, М.: Диалог-МИФИ, 1997, 288 стр. Текстовое поле класса TextFieldДля редактирования одной строки текста вы можете создать текстовое поле на базе класса TextField, которое несложно в использовании. Класс TextField создан на базе другого класса с именем TextComponent, поэтому при работе с текстовым полем класса TextField вы можете использовать и методы класса TextComponent. Приведем краткое описание класса TextField: public class java.awt.TextField extends java.awt.TextComponent { // ----------------------------------------------------- // Конструкторы // ----------------------------------------------------- // Создание поля без текста public TextField(); // Создание поля без текста с заданной шириной public TextField(int cols); // Создание поля и инициализация его текстом public TextField(String text); // Создание поля заданной ширины // и инициализация его текстом public TextField(String text, int cols); // ----------------------------------------------------- // Методы // ----------------------------------------------------- // Вызов метода createTextField public void addNotify(); // Проверка, установлен ли для поля эхо-символ public boolean echoCharIsSet(); // Определение размера поля public int getColumns(); // Получение текущего эхо-символа public char getEchoChar(); // Определение минимальных размеров области // для отображения поля public Dimension minimumSize(); // Определение минимальных размеров области // для отображения поля заданной ширины public Dimension minimumSize(int cols); // Получение строки параметров protected String paramString(); // Определение оптимальных размеров области // для отображения поля public Dimension preferredSize(); // Определение оптимальных размеров области // для отображения поля заданной ширины public Dimension preferredSize(int cols); // Установка эхо-символа для отображения в поле public void setEchoCharacter(char c); } При создании текстового поля вы можете выбрать один из четырех конструкторов, соответственно, для создания поля без текста и без указания размера, без текста заданного размера, для создания поля с текстом и для создания поля с текстом указанного размера. Вот фрагмент кода, в котором создается поле с текстом, имеющее ширину, достаточную для размещения 35 символов: TextField txt; txt = new TextField("Введите строку текста", 35); Созданное поле добавляется в окно аплета методом add. Большинство самых полезнных методов, необходимых для работы с полем класса TextField, определено в классе TextComponent, краткое описание которого мы привели ниже: public class java.awt.TextComponent extends java.awt.Component { // ----------------------------------------------------- // Методы // ----------------------------------------------------- // Получение текста, выделенного пользователем // в окне поля public String getSelectedText(); // Получение позиции конца выделенной области public int getSelectionEnd(); // Получение позиции начала выделенной области public int getSelectionStart(); // Получение полного текста из поля public String getText(); // Проверка, возможно ли редактирование // текста в поле public boolean isEditable(); // Получение строки параметров protected String paramString(); // Удаление извещения public void removeNotify(); // Выделение заданной области текста public void select(int selStart, int selEnd); // Выделение всего текста public void selectAll(); // Включение или выключение возможности // редактирования текста public void setEditable(boolean t); // Установка текста в поле public void setText(String t); } С помощью метода getText вы можете получить весь текст, который имеется в поле. Метод getSelectedText позволяет получить только ту часть текста, которая предварительно была выделена пользователем. Приложение может выделить любой фрагмент текста или весь текст при помощи методов select и selectAll, соответственно. Для записи текста в поле приложение может воспользоваться методом setText. Возможно, для вас будет интересен метод setEditable, позволяющий переключать текстовое поля из режима, при котором редактирование заблокировано, в режим с разрешенным редактированием и обратно. |