📄 documenteventdemo.java
字号:
import javax.swing.*;import java.awt.*;import javax.swing.event.*;public class DocumentEventDemo extends JFrame { private JTextArea jta; private JTextField jtf; public DocumentEventDemo() {/* A JTextArea is created and placed on a JFrame. The Document *//* associated with the JTextArea is obtained The Document *//* registers a DocumentListener. */ jta = new JTextArea(5,15); jta.setLineWrap(true);//行自动下卷 jta.setWrapStyleWord(true); jta.getDocument().addDocumentListener(new DocumentHandler()); jtf = new JTextField(15); jtf.setEditable(false); JPanel p = new JPanel(); p.add(new JScrollPane(jta)); getContentPane().add(p, BorderLayout.CENTER); getContentPane().add(jtf, BorderLayout.SOUTH); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 300, 250); setVisible(true); }/* The DocumentListener is implemented as an inner class. When *//* text is added to or removed from the JTextArea, a DocumentEvent *//* is generated and sent to either the insertUpdate() or *//* removeUpdate() methods. The length and position of the change *//* is written to a JTextField at the bottom of the frame. The *//* changedUpdate() method is not used so it is implemented as a stub. */ class DocumentHandler implements DocumentListener { public void insertUpdate(DocumentEvent event) { int length = event.getLength(); if ( length == 1 ) { jtf.setText("1 character inserted at position "+ event.getOffset()); } else { jtf.setText(""+event.getLength()+ " characters inserted at position "+event.getOffset()); } } public void removeUpdate(DocumentEvent event) { jtf.setText(""+event.getLength()+ " characters deleted at position "+event.getOffset()); } public void changedUpdate(DocumentEvent event) {} } public static void main(String args[]) { DocumentEventDemo demo = new DocumentEventDemo(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -