Здравствуйте дороги пользователи сайта java-soft, сегодня поговорим о классе JtexrField, так же приведем не сколько примеров по его использованию в своих приложениях. Для объявления класса используем:
JTextField textField= new JTextField();
Следующий пример показан JtexrField с заданным за ранее текстом.
JTextField textField = new JTextField("Hello World");
В следующем примере создан JtexrField с заранее заданным количеством столбцов.
JTextField textField = new JTextField(30);
Хотел показать вам еще один пример ограничения или запрет ввода JtexrField по максимальной длине символов.
import javax.swing.text.*;
public class JTextFieldLimit extends PlainDocument {
private int limit;
// дополнительного преобразования прописных
private boolean toUppercase = false;
JTextFieldLimit(int limit) {
super();
this.limit = limit;
}
JTextFieldLimit(int limit, boolean upper) {
super();
this.limit = limit;
toUppercase = upper;
}
public void insertString
(int offset, String str, AttributeSet attr)
throws BadLocationException {
if (str == null) return;
if ((getLength() + str.length()) <= limit) {
if (toUppercase) str = str.toUpperCase();
super.insertString(offset, str, attr);
}
}
}
import java.awt.*;
import javax.swing.*;
public class tswing extends JApplet{
JTextField textfield1;
JLabel label1;
public void init() {
getContentPane().setLayout(new FlowLayout());
//
label1 = new JLabel("max 10 chars");
textfield1 = new JTextField(15);
getContentPane().add(label1);
getContentPane().add(textfield1);
textfield1.setDocument
(new JTextFieldLimit(10));
}
}
