本程序的功能是获取文本框中的文本。窗口中有两个文本框“用户名”和“密码”,以及三个按钮“登录”、“其他用户登录”和“关闭”,初始状态“用户名”文本框是只读的,单击“其他用户登录”按钮后变成可写的,“密码”文本框使用的不是密码文本框,在用户键入的时候设置显示为*号。输入用户名和密码后,单击“登录”按钮后,如果输入的密码为空,则弹出提示消息框,否则后台将显示输入的用户名和密码。比如显示为“admin用户的密码:password”(admin为输入的用户名,password为输入密码)。
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
public class java3
public static void main(String args[])
final Frame frmFrame=new Frame();
Panel pnlPanel=new Panel();
Label lblUsername=new Label("用户名");
Label lblPassword=new Label("密码");
final TextField txtUsername=new TextField("Student");
final TextField txtPassword=new TextField("".8);
txtUsername.setEditable(false);
txtPassword.setChar(’*’);
Button btnButton1=new Button("登录");
Button btnButton2=new Button("其他用户登录");
Button btnButton3=new Button("关闭");
btnButton1.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
if((txtPassword.getText()).length()==0)
JOptionPane.showMessageDialog(frmFrame,"密码不能为空");
return;
txtPassword.setColumns(16);
System.out.println(txtUsername.getText()+"用户的密码:"
+txtPassword.getPassword());
);
btnButton2.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent e)
txtUsername.setEnable(true);
);
btnButton3.addActionListener(new ActionListener()
public void aetionPerformed(ActionEvent e)
System.exit(0);
);
pnlPanel.add(lblUsername);
pnlPanel.add(txtUsername);
pnlPanel.add(lblPassword);
pnlPanel.add(txtPassword);
pnlPanel.add(btnButtonl);
pnlPanel.add(btnButton2);
pnlPanel.add(btnButton3);
frmFrame.add(pnlPanel);
frmFrame.setTitle("advance");
frmFrame.pack();
frmFrame.show();
参考答案:第1处:txtPassword.setEchoChar(’*’)
第2处:txtPassword.getText()
第3处:txtUsername.setEditable(true)
解析: 第一处是通过TextField类的setEchoChar函数设置用户输入时,文本框显示的文本。第二处是通过TextField类的getText函数获取用户的输入,即得到密码值。第三处是使用户名文本框变为可用,使用户可以输入。