java图像界面编程怎么“重置”按钮不起作用
importjava.awt.Font;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListe...
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
class LoginCheck{
private String name;
private String password;
public LoginCheck(String name,String password){
this.name=name;
this.password=password;
}
public boolean validate(){
if("tianshichao".equals(name)&&"abc".equals(password)){
return true;
}else{
return false;
}
}
}
class ActionHandle{
private JFrame frame=new JFrame("WELCOME TO SC");
private JButton submit=new JButton("登陆");
private JButton reset=new JButton("重置");
private JLabel nameLab=new JLabel("用户名");
private JLabel passLab=new JLabel("密 码");
private JLabel infoLab=new JLabel("用户登陆系统");
private JTextField nameText=new JTextField();
private JPasswordField passText=new JPasswordField();
public ActionHandle(){
Font fnt=new Font("Serief",Font.BOLD,12);
infoLab.setFont(fnt);
submit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0){
if(arg0.getSource()==submit){
String tname=nameText.getText();
String tpass=new String(passText.getPassword());
LoginCheck log=new LoginCheck(tname,tpass);
if(log.validate()){
infoLab.setText("登陆成功,欢迎光临");
}else{
infoLab.setText("登录失败,请从新输入");
}
}
if(arg0.getSource()==reset){
nameText.setText("");
passText.setText("");
infoLab.setText("用户登陆系统");
}
}
});
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent arg0){
System.exit(1);
}
});
frame.setLayout(null);
nameLab.setBounds(5,5,60,20);
passLab.setBounds(5,30,60,20);
infoLab.setBounds(5,65,220,30);
nameText.setBounds(65,5,100,20);
passText.setBounds(65,30,100,20);
submit.setBounds(165,5,60,20);
reset.setBounds(165,30,60,20);
frame.add(nameLab);
frame.add(passLab);
frame.add(infoLab);
frame.add(nameText);
frame.add(passText);
frame.add(submit);
frame.add(reset);
frame.setSize(280,130);
frame.setVisible(true);
}
}
public class MyActionEventDemo02{
public static void main(String[] args){
new ActionHandle();
}
}
if(arg0.getSource()==reset){
nameText.setText("");
passText.setText("");
infoLab.setText("用户登陆系统");
}
怎么不能清除输入框里的内容 展开
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
class LoginCheck{
private String name;
private String password;
public LoginCheck(String name,String password){
this.name=name;
this.password=password;
}
public boolean validate(){
if("tianshichao".equals(name)&&"abc".equals(password)){
return true;
}else{
return false;
}
}
}
class ActionHandle{
private JFrame frame=new JFrame("WELCOME TO SC");
private JButton submit=new JButton("登陆");
private JButton reset=new JButton("重置");
private JLabel nameLab=new JLabel("用户名");
private JLabel passLab=new JLabel("密 码");
private JLabel infoLab=new JLabel("用户登陆系统");
private JTextField nameText=new JTextField();
private JPasswordField passText=new JPasswordField();
public ActionHandle(){
Font fnt=new Font("Serief",Font.BOLD,12);
infoLab.setFont(fnt);
submit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0){
if(arg0.getSource()==submit){
String tname=nameText.getText();
String tpass=new String(passText.getPassword());
LoginCheck log=new LoginCheck(tname,tpass);
if(log.validate()){
infoLab.setText("登陆成功,欢迎光临");
}else{
infoLab.setText("登录失败,请从新输入");
}
}
if(arg0.getSource()==reset){
nameText.setText("");
passText.setText("");
infoLab.setText("用户登陆系统");
}
}
});
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent arg0){
System.exit(1);
}
});
frame.setLayout(null);
nameLab.setBounds(5,5,60,20);
passLab.setBounds(5,30,60,20);
infoLab.setBounds(5,65,220,30);
nameText.setBounds(65,5,100,20);
passText.setBounds(65,30,100,20);
submit.setBounds(165,5,60,20);
reset.setBounds(165,30,60,20);
frame.add(nameLab);
frame.add(passLab);
frame.add(infoLab);
frame.add(nameText);
frame.add(passText);
frame.add(submit);
frame.add(reset);
frame.setSize(280,130);
frame.setVisible(true);
}
}
public class MyActionEventDemo02{
public static void main(String[] args){
new ActionHandle();
}
}
if(arg0.getSource()==reset){
nameText.setText("");
passText.setText("");
infoLab.setText("用户登陆系统");
}
怎么不能清除输入框里的内容 展开
3个回答
2013-04-04
展开全部
if(arg0.getSource()==reset){
是这个判断有问题,你判断 arg0.getSource() 与 reset 是否相等,不能用 == 号,
要直接改用 arg0.getSource().equals(reset) 这样来判断才能有效。
if(arg0.getSource().equals(reset)) {
你把程序中所有使用 == 号判断的全部改为 equals 再试试。
是这个判断有问题,你判断 arg0.getSource() 与 reset 是否相等,不能用 == 号,
要直接改用 arg0.getSource().equals(reset) 这样来判断才能有效。
if(arg0.getSource().equals(reset)) {
你把程序中所有使用 == 号判断的全部改为 equals 再试试。
更多追问追答
追问
还是不行啊
追答
是怎么不行?
你在程序里面,用排错的方法,一步一步调试,看下程序是走到哪一步。
在程序的关键行里面加上以下步骤测试:
System.out.println("----------------------test 1---------------------");
...
System.out.println("----------------------test 2---------------------");
...
System.out.println("----------------------test 3---------------------");
...
System.out.println("----------------------test n---------------------");
...
展开全部
通篇代码没看到你哪里给reset绑定过事件。怎么会有反应?
更多追问追答
追问
if(arg0.getSource()==reset){
nameText.setText("");
passText.setText("");
infoLab.setText("用户登陆系统");
}
追答
额。你这个写在submit的事件绑定上面。所以,只有点击登录,才会执行到这里来。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-04
展开全部
reset 执行哪个事件、事件代码?
追问
if(arg0.getSource()==reset){
nameText.setText("");
passText.setText("");
infoLab.setText("用户登陆系统");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询