如何写一个图形化界面程序?

图形化界面程序的构成要素:

  • 窗体、账号/密码框、登录/注册按钮 监听器

登录操作:

  • 需要获取输入框中的字符串
  • 比较账号和密码
  • 根据比较结果执行对应的提示消息
  • 想要让按钮点击之后能够有反应且能够执行,需要调用预设好的一个方法,需要使用到前端的一些组建对象,传对象的操作。

动作监听器:

  • ActionListenter监听按钮这一类的组件,监听按钮被点击的这个事件。
  • 格式 :
    - 类名 实现(implements)ActionListenter(动作监听器){ }
    - 在这个类中,重写ActionListenter的方法
    - 将方法的分号改为大括号,它的中间可以协商按钮被点击之后所需要执行的代码,打印输出System.out.println(“按钮被点击了”)
    - 在界面类中,创建一个自己写的监听器对象,添加到需要实现响应事件功能的按钮上
Code
  • 创建一个方法,设置窗体、尺寸、居中、退出进程,流式布局
  • 设置图片对象,将图片的路径写入新创建的图片对象,设置一个标题及其标题的大小,将前面的图片放入所设置的文本框中,并添加到窗体中
  • 设置标题对象、文本框及其文本框的尺寸大小、按钮对象,将其全部加入到窗体中,实现
  • 设置一个监听器对象,按钮对象调用添加监听器对象
  • 监听器对象调用标题对象等于文本框对象
public class Hi {

    public static void main(String[] args){
        Hi yi=new Hi();
        yi. showUI();
        System.out.println("登录成功");
    }
    public void showUI(){
        javax.swing.JFrame in=new javax.swing.JFrame();
        in.setSize(380,500);
        in.setTitle("登录入口");
        in.setLocationRelativeTo(null);//设置居中
        in.setDefaultCloseOperation(3);//设置推出进程
        java.awt.FlowLayout ji=new java.awt.FlowLayout();
        in.setLayout(ji);

        javax.swing.JLabel fi=new javax.swing.JLabel("账号: ");
        java.awt.Font qi=new java.awt.Font("黑体",Font.BOLD,30);
        fi.setFont(qi);
        in.add(fi);
        javax.swing.JTextField si=new javax.swing.JTextField();
        java.awt.Dimension di=new java.awt.Dimension(300,28);
        si.setPreferredSize(di);
        in.add(si);
        javax.swing.JLabel ai=new javax.swing.JLabel("密码: ");
        java.awt.Font ri=new java.awt.Font("黑体",Font.BOLD,30);
        ai.setFont(ri);
        in.add(ai);
        javax.swing.JTextField ti=new javax.swing.JTextField();
        java.awt.Dimension ui=new java.awt.Dimension(300,28);
        ti.setPreferredSize(ui);
        in.add(ti);
        javax.swing.JButton ei=new javax.swing.JButton("登录");
        in.add(ei);
        in.setVisible(true);

        SiListenter sl = new SiListenter();
        ei.addActionListener(sl);

        sl.fi = si;
        sl.ai = ti;
        }
    }
  • 创建一个类,命名为SiListenter 实现implements ActionListenter,依次写下账号密码的文本框对象,设置一个重写ActionListenter的方法,分别创建两个对象赋值给文本框调用得到的文本,打印输出System.out.println(" "),创建一个新的窗体对象,使其成为新的窗体,设置好大小,使得它实现,if如果创建的两个对象分别调用等于输入的账号和密码,则会在跳出一个文本框
public class SiListenter implements ActionListener {
    JTextField fi;
    JTextField ai;
    public void actionPerformed(ActionEvent e) {
        String co=fi.getText();
        String di=ai.getText();
        System.out.println("点击登录了账户:"+co+"密码:"+di);

        if(co.equals("ideal")&&di.equals("ideal1")) {
            javax.swing.JFrame wi = new javax.swing.JFrame();
            wi.setSize(800, 600);
            wi.setVisible(true);
        }
        System.out.println("按钮被点击了");
    }
}
  • 最后点击运行,完成图形化界面程序,如图:

java图形化界面添加时间 java写图形化界面_windows