四、综合应用题
本程序的功能是获取文本框中的文本。窗口中有两个文本框“用户名”和“密码”,以及三个按钮“登录”、“其他用户登录,,和“关闭”,初始状态“用户名”文本框是只读的,单击“其他用户登录”按钮后变成可写的,“密码”文本框使用的不是密码文本框,在用户键入的时候设置显示为*号。输入用户名和密码后,单击“登录”按钮后,如果输入的密码为空,则弹出提示消息框,否则后台将显示输入的用户名和密码。比如显示为“admin用户的密码:password”(admi为输入的用户名,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 TextFidd("",
8);
txtUsername.setEditable(false);
txtPassword.setChar(’*’);
Button btnButtonl=new Button("登录");
ButtOn btnButton2=new Button("其他用户登录");
Button btnButton3=new Button("关闭");
btnButtonl.addActionListener(new ActionListen-er()
{
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 ActionListen-
er()
{
public void actionPerformed(ActionEvent e)
{
txtUsername.setEnable(true);
}
});
btnButton3.addActionListener(new ActionListen-
er()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
pnlPanel.add(1blUsername);
pnlPanel.add(txtUsername);
pnlPanel.add(1blPassword);
pnlPanel.add(txtPassword);
pnlPanel.add(btnButtonl);
pnlPanel.add(btnButton2);
pnlPanel.add(btnButton3);
frmFrame.add(pnlPanel);
frmFrame.setTitle("advance");
frmFrame.pack();
frmFrame.show();
}
}
四、综合应用题
第1处:txtPassWord.setEchoCharf(’*’)
第2处:txtPassword.getText()
第3处:txtUsername.setEditable(true)
解析:第一处是通过TextField类的setEchoChar函数设置用户输入时,文本框显示的文本。第二处是通过TextField类的getText函数获取用户的输入,即得到密码值。第三处是使用户名文本框变为可用,使用户可以输入。