java - 单击按钮后关闭 JFrame Java

标签 java swing user-interface jframe

您好,我正在为我正在编写的加密程序编写一种菜单。我完成了它的核心部分,现在我想尝试为它创建一个 GUI。这是第一个菜单的代码:

package matrix_with_GUI;

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

public class Main_Menu extends JFrame implements ActionListener{
     private JButton action1 = new JButton ("");
     private JButton action2 = new JButton ("");
     private JPanel pane = new JPanel();
     private JLabel lbl;

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

public Main_Menu(){
    super();
    JPanel pane=new JPanel();
    setTitle ("Start Menu") ;
    JFrame frame = new JFrame("");

    setVisible(true);
    setSize (380, 260) ;
    setLocation (450, 200) ;
    frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) ;

    action1 = new JButton("Start");
    action2 = new JButton("Exit");
    lbl = new JLabel ("Welcome to the Matrix Encoder/Decoder!!!");
    setLayout(new FlowLayout());

    add (lbl) ;
    add(action1, BorderLayout.CENTER);
    action1.addActionListener (this);
    add(action2, BorderLayout.CENTER);
    action2.addActionListener (this);
}
@Override
public void actionPerformed(ActionEvent event) {
    // TODO Auto-generated method stub
    OptionsMenu x = new OptionsMenu();
    if (event.getSource() == action1)
    {
        System.exit(0);
        x.OptionsMenu();
    }
    else if(event.getSource() == action2){
      System.exit(0);
    }

}

} 单击“开始”按钮后,新菜单会出现一切正常,但第一个菜单保持打开状态。有没有办法关闭第一个菜单并通过单击第一个按钮打开第二个菜单?我对 GUI 很陌生,所以最简单的解决方案会非常有帮助。附带说明是否有一种简单的方法可以将“开始”按钮移动到下一行?谢谢

最佳答案

您有 2 个选择:您可以使用窗口监听器,或者您可以使用 dispose() 方法。要执行 dispose() 只需键入

* This is better to be used with subframes and 2nd level windows.*

this.dispose();

或检查此链接以使用窗口监听器

Closing JFrame

关于java - 单击按钮后关闭 JFrame Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17011991/

相关文章:

java - "Always on Top"带有 Java 的 Windows

user-interface - 是否为机器人的神经网络大脑找到合适的编程语言?

java - 为什么我遇到 Class.forName ("com.mysql.jdbc.Driver"); 找不到类异常

java - JCheckBox 用于缩放上传图片

java - 以内存有效的方式计算 MongoDB(Java 驱动程序)中的唯一对象

java - EJB 3 和 Swing : how to improve GUI responsiveness?

java - 无法取消 WorkerThread 。取消函数什么时候执行,仍然执行

jquery - 当用户单击时,如何从 jquery ui 对话框中获取按钮 id 的值?

java - 如何使用 JPA 和 Hibernate 映射集合的最新子项

java - 法语、西类牙语重音字符在 Excel 中无法正确显示