jtextfieldx.java

来自「a Big Java source Code Exemples」· Java 代码 · 共 72 行

JAVA
72
字号
// Updates: 2002.05.28


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;


/** 
 * Extension de la classe JTextField permettant le rappel d'entr閑s 
 * pr閏閐entes avec les touches haut et bas.
 */
public class JTextFieldX extends JTextField implements ActionListener, KeyListener {
  ArrayList cmds;
  int cmdIndex;
  

  public JTextFieldX() {
    super();
    init();
  }
  
  
  public JTextFieldX(int columns) {
    super(columns);
    init();
  }
  

  public JTextFieldX(String text) {
    super(text);
    init();
  } 
  
  
  public JTextFieldX(String text, int columns) {
    super(text, columns);
    init();
  }  
  

  public void init() {
    cmds = new ArrayList();
    addKeyListener(this);
    addActionListener(this);
  }
  

  public void actionPerformed(ActionEvent e) {
    cmds.add(getText());
    cmdIndex = cmds.size();   
    setText("");
  }  


  public void keyPressed(KeyEvent e) {
    if (e.getKeyCode() == KeyEvent.VK_UP) {
      if (cmdIndex > 0) setText((String)cmds.get(--cmdIndex));
      e.consume();
    }
    if (e.getKeyCode() == KeyEvent.VK_DOWN) {
      if (cmdIndex < cmds.size()-1) setText((String)cmds.get(++cmdIndex));
      e.consume();
    }
  }

  
  public void keyReleased(KeyEvent e) {}
  public void keyTyped(KeyEvent e) {}   
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?