Где спрятан even TextChanged для jTextField?
Добавлено: 06 июл 2006, 01:01
собственно сабж
форум программистов
https://www.developing.ru/
Код: Выделить всё
txtTimer.setText(-1+"");
txtTimer.getDocument().putProperty("name",txtTimer.getText());
txtTimer.setForeground(new java.awt.Color(255, 0, 0));
txtTimer.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.LOWERED, null, new java.awt.Color(204, 204, 204), null, null));
txtTimer.setFocusable(false);
txtTimer.setMinimumSize(new java.awt.Dimension(15, 18));
txtTimer.getDocument().addDocumentListener(new DocumentListener(){
public void insertUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from insert");
}
public void removeUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from remove");
}
Код: Выделить всё
txtTimer.setText(-1+"");
txtTimer.getDocument().putProperty("name",txtTimer.getText());
txtTimer.getDocument().addDocumentListener(new DocumentListener(){
public void insertUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from insert");
}
public void removeUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from remove");
}
Код: Выделить всё
txtTimer.setText(-1+"");
txtTimer.getDocument().putProperty("name",txtTimer.getText());
txtTimer.getDocument().addDocumentListener(new DocumentListener(){
public void insertUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from insert");
}
public void removeUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from remove");
}
public void changedUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
if (doc.getProperty("name").toString().trim().equals("0"))
System.out.println("from change");
}});
Код: Выделить всё
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.text.Document;
public class TextFieldDemo implements Runnable {
private JTextField textField;
private int countDown = 5;
private boolean running = true;
public TextFieldDemo() {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
textField = new JTextField();
textField.setText(countDown + "");
textField.setEditable(false);
textField.getDocument().putProperty("test", textField.getText());
textField.getDocument().addDocumentListener(new DocumentListener(){
public void insertUpdate(DocumentEvent e) {
Document doc = (Document)e.getDocument();
System.out.println(doc.getProperty("test"));
check();
}
public void removeUpdate(DocumentEvent e) {
check();
}
public void changedUpdate(DocumentEvent e) {
check();
}
});
frame.add(textField);
frame.pack();
frame.setVisible(true);
new Thread(this).start();
}
private void check() {
if (textField.getText().equals("0")) {
running = false;
}
}
public static void main(String[] argv) {
new TextFieldDemo();
}
public void run() {
while(running) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
countDown--;
textField.setText(countDown + "");
}
JOptionPane.showMessageDialog(null, "BABAM!", "big bada bum", JOptionPane.ERROR_MESSAGE);
}
}