JAVA如何使文本框自动获取焦点
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Serialnumber extends Applet implements ActionListener{
Label lb=new Label("请输入验证码");
Label a=new Label("-");
Label b=new Label("-");
Label c=new Label("-");
TextField txt1=new TextField(5);
TextField txt2=new TextField(5);
TextField txt3=new TextField(5);
TextField txt4=new TextField(5);
TextField txt5=new TextField(40);
Button btn=new Button("确定");
public void init(){
add(lb);
add(txt1);
add(a);
add(txt2);
add(b);
add(txt3);
add(c);
add(txt4);
add(btn);
add(txt5);
btn.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
if(txt1.getText().equals("fgnig")&&txt2.getText().equals("sfhsi")&&txt3.getText().equals("nvhir")&&txt4.getText().equals("vnihy"))
txt5.setText("序列号正确!");
else
txt5.setText("对不起,序列号错误,请您重新输入有效序列号!");
}
}
这是我的具体代码,请高手帮我实现一个功能,那就是如何在一个文本框输入完成之后(无论正确与否,只要是输入了一定的字符长度)光标自动移到下一个文本框。 展开
*********************************************************************
你的代码有点乱,没太看懂,先单就你提出的问题我编了个小程序,你可以看看。
一下程序实现功能:当在username(用户名)输入框中输入字符超过5个时,光标自动跳转到password(密码)输入框,类FocusTest.java的代码如下:
*********************************************************************
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class FocusTest extends JFrame {
JTextField usernameText;
JTextField passwordText;
public FocusTest() {
// User name
JLabel usernameLabel = new JLabel("User name: ");
usernameText = new JTextField(20);
JPanel usernamePanel = new JPanel(new FlowLayout());
usernamePanel.add(usernameLabel);
usernamePanel.add(usernameText);
// Password
JLabel passwordLabel = new JLabel("Password: ");
passwordText = new JTextField(20);
JPanel passwordPanel = new JPanel(new FlowLayout());
passwordPanel.add(passwordLabel);
passwordPanel.add(passwordText);
// Username and Password
JPanel inputPanel = new JPanel(new GridLayout(2, 1));
inputPanel.add(usernamePanel);
inputPanel.add(passwordPanel);
this.add(inputPanel);
this.pack();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
// usernameText addKeyListener
usernameText.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
if (((JTextField) (e.getSource())).getText().length() >= 4) {
passwordText.requestFocus();
}
}
});
}
public static void main(String[] args) {
new FocusTest();
}
}
*********************************************************************
运行结果如下:
*********************************************************************