Skip to main content

Java GUI编程

常用类

javaGUI主要由四部分组成:

  • 组件
  • 容器
  • 布局管理器
  • 图形类

窗体 & 容器

  • JFrame

    一般来说,都是用一个类继承该类,使得窗口显示出来的方法.

    class MainWindow extends JFrame { ... }

    MainWindow main = new MainWindow();
    main.setTtile("xxx");
    main.setSize(width, height);
    main.setVisible(true);
    main.setDefaultCloseOperation(MainWindow.EXIT_ON_CLOSE);
  • JPanel JPanel是一个容器,用于装各种组件,可以把所有组件放到同一个地方,使得在一个位置下能够放下更多组件。用法如下

    JPanel pnl=new JPanel();
    pnl.add(btnReset);
    pnl.add(btnLogin);
    pnl.add(txtUid);
    pnl.add(txtPwd);

布局管理器

用于设置界面的布局方式,常用布局有

  • GridLayout
  • BoxLayout
  • BorderLayout
  • FlowLayout

使用方法

GridLayout layout = new GridLayout(5, 1);
main.setLayout(layout);
tip

setLayout和add方法是JFrame实例才有的

文本框 & 按钮 & 标签

  • 文本框

    文本框常用的分三种:JTextField,JPasswordField,JTextArea

    JTextField txtUid = new JTextField();
    JPasswordField txtPwd=new JPasswordField(20);
    JButton btnLogin=new JButton("登录");
    JButton btnReset=new JButton("重置");

    常用方法有:

    txtUid.getText(); //获取文本框内容
    txtUid.setText(); //改变文本框内容
  • 按钮 使用方法

    JButton btnLogin=new JButton("登录");
    JButton btnReset=new JButton("重置");

    常用方法:

    添加监听事件——监听器,需要重写ActionListener接口中的actionPerformed方法,或者创建一个继承于ActionListener接口的子类。如果MainWindow类实现ActionListener接口,则可以直接传入this,并在类中写actionPerformed方法。使用方法如下:

    一般写法:

    btnLogin.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {...}
    });

    主窗口实现接口:(能够直接调用主窗口的组件变量)

    btnLogin.addActionListener(this);
    public void actionPerformed(ActionEvent e) {...}

对话框

对话框的方法为静态方法,通过调用JOptionPan当中的showMessageDialog方法实现

//如下的null位置处的变量表示父窗口
JOptionPane.showMessageDialog(null, msg); //普通对话框
JOptionPane.showConfirmDialog(null, msg); //确认对话框
JOptionPane.showInputDialog(null, msg); //输入对话框