📌  相关文章
📜  jframe 使用按钮 actionlistener 打开另一个框架 - Java (1)

📅  最后修改于: 2023-12-03 15:02:07.928000             🧑  作者: Mango

使用JFrame和ActionListener打开另一个框架

在Java编程中,使用JFrame和ActionListener可以方便地打开另一个框架。在本篇文章中,我们将介绍如何使用JFrame和ActionListener打开另一个框架。

准备工作

在开始之前,您需要在计算机上安装并配置Java开发环境(JDK)。如果您没有安装,请通过以下链接下载JDK:Java SE Development Kit

步骤一:创建主框架

首先,我们需要创建主框架,它将包含一个按钮,并在单击该按钮时打开另一个框架。以下是创建主框架所需的代码:

import javax.swing.*;

public class MainFrame extends JFrame {
    JButton button;

    public MainFrame() {
        this.setTitle("主框架");
        this.setSize(300, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        JPanel panel = new JPanel();

        button = new JButton("打开窗口");
        panel.add(button);
       
        this.add(panel);
        this.setVisible(true);
    }

    public static void main(String[] args) {
        new MainFrame();
    }
}

在这里,我们创建了一个名为“MainFrame”的类,这是一个JFrame子类。我们设置了标题,大小和关闭操作。然后,我们创建了一个JPanel并将其添加到框架中。JPanel包含一个按钮,当单击该按钮时将打开另一个框架。

步骤二:创建另一个框架

现在,我们将创建另一个框架,该框架将在单击按钮时打开。以下是创建另一个框架所需的代码:

import javax.swing.*;

public class SecondFrame extends JFrame {

    public SecondFrame() {
        this.setTitle("第二个框架");
        this.setSize(300, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JPanel panel = new JPanel();
        JLabel label = new JLabel("这是另一个窗口!");
        panel.add(label);
        this.add(panel);
        this.setVisible(true);
    }
}

这里,我们创建了一个名为“SecondFrame”的类,并设置了窗体的标题,大小和关闭操作。我们创建了一个JPanel和一个JLabel,并将其添加到框架中。当单击按钮时,此框架将打开。

步骤三:添加Button ActionListener

现在我们需要在按钮上添加ActionListener,以便在单击按钮时打开另一个框架。以下是在按钮上添加ActionListener所需的代码:

button.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        new SecondFrame();
    }
});

在这里,我们使用JButton的addActionListener()方法添加了一个ActionListener。当按钮单击事件发生时,将调用actionPerformed()方法。在actionPerformed()方法中,我们创建了另一个框架的实例。

完整代码

以下是完整的代码示例,其中包含了用于创建主框架和另一个框架的代码以及添加ActionListener的代码:

import javax.swing.*;
import java.awt.event.*;

public class MainFrame extends JFrame {
    JButton button;

    public MainFrame() {
        this.setTitle("主框架");
        this.setSize(300, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        
        JPanel panel = new JPanel();

        button = new JButton("打开窗口");
        panel.add(button);
       
        this.add(panel);
        this.setVisible(true);

        button.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                new SecondFrame();
            }
        });
    }

    public static void main(String[] args) {
        new MainFrame();
    }
}

import javax.swing.*;

public class SecondFrame extends JFrame {

    public SecondFrame() {
        this.setTitle("第二个框架");
        this.setSize(300, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        JPanel panel = new JPanel();
        JLabel label = new JLabel("这是另一个窗口!");
        panel.add(label);
        this.add(panel);
        this.setVisible(true);
    }
}
结论

现在您已经了解了如何使用JFrame和ActionListener打开另一个框架。您可以将此代码作为起点,进一步探索其他常见GUI操作的实现。