一、
创建一个新的类 BtnAction 实现 ActionListener
import java.awt.event.ActionEvent;
import java.awt.svent.ActionListener;
public class BtnAction implements ActionListener {
}
二、
将ActionListener中的方法复制到类中 改分号为大括号并在括号中写上一句输出语句
// 点击按钮才会执行的方法
public void actionPerformed(ActionEvent e) {
System.out.println("你干嘛~~嘿嘿哟");
}
注:此处我用的是IDEA,只需按住CTRL键再按鼠标左键即可查看源代码,在源代码中可直接复制
三、
在LoginUI类的showUI方法中的可视化代码后面 ,创建一个BtnAction对象
import java.awt.*;
import javax.swing.*;
public class LoginUI {
public void showUI() {
JFrame jf = new JFrame();
jf.setTitle("开始界面");
jf.setSize(400, 520);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLocation(650, 250);
FlowLayout layout = new FlowLayout();
jf.setLayout(layout);
//创建一个登录界面需要的组件对象
ImageIcon icon =new ImageIcon("C:\\Users\\ASUS\\OneDrive\\图片\\OIP-C(1)(1)(1)(1).png");
JLabel iconJla=new JLabel(icon);
JButton nameJla = new JButton("鸽鸽的名字");
JButton timeJla= new JButton("练习时长(年)");
JTextField nameJtf=new JTextField(30);
JPasswordField timeJpf=new JPasswordField(29);
JButton loginBtn = new JButton("验证");
//将组件添加到窗体中 jf.add();
jf.add(iconJla);
jf.add(nameJla);
jf.add(nameJtf);
jf.add(timeJla);
jf.add(timeJpf);
jf.add(loginBtn);
jf.setVisible(true); //可视化
BtnAction btnaction = new BtnAction(); //创建一个BtnAction 对象
loginBtn.addActionListener(btnaction); //使用按钮对象调用addActionListener方法
// 将取的别名 与 对应的原名绑定起来
btnaction.nameJtfA = nameJtf;
btnaction.timeJpfA = timeJpf;
}
public static void main(String[] args) {
LoginUI loginUI = new LoginUI();
loginUI.showUI();
}
}
注:这一段代码我还是不过多阐述,详情可看上一期
》》》CSDN
《《《
四、
使用按钮对象 在BtnAction中调用addActionListener方法 添加这个对象
JTextField nameJtfA; //相当于输入框的别名
JPasswordField timeJpfA;
注:加于” BtnAction 实现 ActionListener ”之上
五、
在“二”的输出语句后添加行为(和输出语句在同一大括号中)
String name=nameJtfA.getText(); // 获取名字输入框中的文本内容
String time=timeJpfA.getText(); // 获取时间输入框中的文本内容
System.out.println("鸽鸽的名字"+name); //输出文本
System.out.println("练习时长"+time+"年");
// 根据获取的账号密码做判断 判断字符串时需要使用 equals方法
if (name.equals("蔡徐坤")&& time.equals("2.5")){
System.out.println("很好,你是真爱粉");
// 弹出提示框
JOptionPane.showMessageDialog(null,"验证通过");
}else{
System.out.println("小黑子你干嘛");
JOptionPane.showMessageDialog(null,"验证失败");
//后面是弹出的窗体,添加与否无关紧要
JFrame jf1=new JFrame();
jf1.setSize(300,350);
jf1.setLocation(650,300);
FlowLayout flow1 =new FlowLayout();
jf1.setLayout(flow1);
ImageIcon icon1 =new ImageIcon("C:\\Users\\ASUS\\OneDrive\\图片\\0921b79ac122788dee48164209a0471(1)(1).png");
JLabel iconJla=new JLabel(icon1);
jf1.add(iconJla);
jf1.setVisible(true);
}
整体效果:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class BtnAction implements ActionListener {
JTextField nameJtfA;
JPasswordField timeJpfA;
public void actionPerformed(ActionEvent e){
System.out.println("你干嘛~~嘿嘿哟");
String name=nameJtfA.getText();
String time=timeJpfA.getText();
System.out.println("鸽鸽的名字"+name);
System.out.println("练习时长"+time+"年");
if (name.equals("蔡徐坤")&& time.equals("2.5")){
System.out.println("很好,你是真爱粉");
JOptionPane.showMessageDialog(null,"验证通过");
}else{
System.out.println("小黑子你干嘛");
JOptionPane.showMessageDialog(null,"验证失败");
JFrame jf1=new JFrame();
jf1.setSize(300,350);
jf1.setLocation(650,300);
FlowLayout flow1 =new FlowLayout();
jf1.setLayout(flow1);
ImageIcon icon1 =new ImageIcon("C:\\Users\\ASUS\\OneDrive\\图片\\0921b79ac122788dee48164209a0471(1)(1).png");
JLabel iconJla=new JLabel(icon1);
jf1.add(iconJla);
jf1.setVisible(true);
}
}
}
import java.awt.*;
import javax.swing.*;
public class LoginUI {
public void showUI() {
JFrame jf = new JFrame();
jf.setTitle("开始界面");
jf.setSize(400, 520);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.setLocation(650, 250);
FlowLayout layout = new FlowLayout();
jf.setLayout(layout);
ImageIcon icon =new ImageIcon("C:\\Users\\ASUS\\OneDrive\\图片\\OIP-C(1)(1)(1)(1).png");
JLabel iconJla=new JLabel(icon);
JButton nameJla = new JButton("鸽鸽的名字");
JButton timeJla= new JButton("练习时长(年)");
JTextField nameJtf=new JTextField(30);
JPasswordField timeJpf=new JPasswordField(29);
JButton loginBtn = new JButton("验证");
jf.add(iconJla);
jf.add(nameJla);
jf.add(nameJtf);
jf.add(timeJla);
jf.add(timeJpf);
jf.add(loginBtn);
jf.setVisible(true);
BtnAction btnaction = new BtnAction();
loginBtn.addActionListener(btnaction);
btnaction.nameJtfA = nameJtf;
btnaction.timeJpfA = timeJpf;
}
public static void main(String[] args) {
LoginUI loginUI = new LoginUI();
loginUI.showUI();
}
}
运行效果:
温馨提示:
1:注意括号 () 分号 ; 和引号 "" 需用英文格式
2: 如有报错,记得检查括号和分号是否多与少
3:不妨举一反三多加练习