Класс TextField реализует однострочную область ввода текста, обычно называемую элементами редактирования (edit control). Текстовые поля дают возможность пользователю вводить строки и редактировать текст, используя клавиши-стрелки, сочетание клавиш для операций "вырезать" и "вставить", а также выборки мышью. TextField — подкласс TextComponent. TextField определяет следующие конструкторы:
TextField ()
TextField(int numChars)
TextField(String str)
TextField(String str, int numChars)
Первая форма создает заданное текстовое поле по умолчанию. Вторая — создает текстовое поле шириной nwncharsсимволов. Третья форма инициализирует текстовое поле со строкой, содержащейся в str. Четвертая — инициализирует текстовое поле и устанавливает его ширину.
TextField (и его суперкласс TextComponent) обеспечивает несколько методов, которые позволяют использовать текстовое поле. Чтобы получить строку, содержащуюся в текущий момент в текстовом поле, вызовите метод getText(), а для установки текста вызовите setText(). Форматы этих методов следующие:
String getText()
void setText(String str)
Здесь str — новая строка.
Пользователь может выбирать часть текста в текстовом поле. Метод select() позволяет выбирать часть текста под программным управлением. Вызывая getseLectedText(), ваша программа может получить текущий выбранный текст. Формат этих методов:
String getSelectedText()
void select (int startIndex, int endIndex)
Метод getSelectedText() возвращает выбранный текст, а метод select() выбирает символы, начинающиеся в startlndex и заканчивающиеся в endIndex - 1.
Вызовом setEditable() можно управлять возможностью редактирования (изменения содержания) текстового поля пользователем. Вызовом isEditable() можно определить, редактируемо ли данное поле. Форматы этих методов:
boolean ieEditable()
void setKditable (boolean canEdit)
isEditable() возвращает true, если текст может быть изменен, и false — в противном случае. В методе setEditabie (), если canEdit true, то текст может быть изменен, а если false — не может.
Если нужно, чтобы пользователь мог вводить текст, который бы не отображался в секретном поле (типа пароля), то следует отключить отображение на экране вводимых символов, вызывая setEchoChar(). Данный метод определяет одиночный символ (эхо-символ), который будет отображаться при вводе каждого символа (таким образом, фактически вводимые символы не будут показаны в поле). С помощью метода echoCharIsSet()можно проверить, находится ли текстовое поле в этом режиме. Вызывая метод getEchoChar() можно отыскать и извлечь эхо-символ. Форматы перечисленных методов следующие:
void setEchoChar(char ch)
boolean echoCharlsSet()
char getEchoChar()
Здесь ch определяет эхо-символ, который будет отображаться на экране.