【问题标题】:Multiple JFrame open at the same time, need to close just the one click JAVA [duplicate]多个JFrame同时打开,需要一键关闭JAVA [重复]
【发布时间】:2018-04-09 17:50:50
【问题描述】:

我有一个主菜单,当需要查看添加的数据时会弹出一个带有 ok 按钮的新 JFrame,我为其添加一个侦听器,当我点击 ok 关闭它时,它会关闭主菜单并保留 GUI结果打开后,我只关闭结果 gui,而不是主菜单,我尝试了 dispose(),当然还有 system.out(0),但它关闭了所有

public void GuiResultados(Persona persona, Abs abs){

    JLabel titulo = new JLabel();  
    titulo.setBounds(5,8,700,30); 
    titulo.setText("Resultados");
    JFrame frame= new JFrame();  
    JButton button = new JButton("Ok"); \\button create
    CloseListener closelistener = new CloseListener(); \\closelistener process
    frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    button.setVisible(true); \\button visible
    frame.setTitle("Datos de entrenamiento");
    JTextArea area=new JTextArea();
    area.append("Edad: "+ persona.getEdad() + "\n");
    area.append("Estatura(m): " + persona.getTamano() + "\n");

    area.append("Cantidad de calorias quemadas en todas las series:" + totalCaloriasQuemadasAbs + "\n");


    button.setBounds(150,395,100,30);
    area.setEditable(false);
    area.setBounds(20,30, 350,350);  
    frame.add(area);  
    frame.add(button);

    button.addActionListener(closelistener); // calling the listener
    frame.add(titulo);
    frame.setSize(410,500);  
    frame.setLayout(null);  
    frame.setVisible(true); 
}

private class CloseListener implements ActionListener{

    public void actionPerformed(ActionEvent e) {

        dispose(); //not closing main window, not the gui where the button is
    System.out.println("Frame Closed. ");
    }
}

【问题讨论】:

标签: java swing


【解决方案1】:

我找到了解决方案,抱歉,如果有人需要就是这些

private class CloseListener implements ActionListener{

    public void actionPerformed(ActionEvent e) {
        Window win = SwingUtilities.getWindowAncestor((Component) e.getSource());
        win.dispose();
    System.out.println("Frame Closed. ");
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-22
    • 1970-01-01
    • 1970-01-01
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 1970-01-01
    相关资源
    最近更新 更多