Hallo,
ich habe folgenden code
Wie man erkennen kann wird die funktion calcProduct() aufgerufen, wenn ein Button gedrückt wird. In dieser Funktion werden zwei Fenster (output1 + 2) geöffnet.
Wenn ich den Button jetzt mehrmals drücke werden immer wieder neue Fenster geöffnet.
Ist es irgendwie möglich zu prüfen, ob die Fenster (output1+2) bereits initialisiert wurden und damit bereits geöffnet sind? Das heißt es sind immer nur zwei output-Fenster zu sehen?
Danke
ich habe folgenden code
Code:
public class MainFrame extends JFrame
{
private JDesktopPane desktop = new JDesktopPane();
private InputFrame input;
private OutputFrame output1;
private OutputFrame output2;
public static void main(String[] args)
{
new MainFrame();
}
public MainFrame()
{
try
{
jbInit();
}
catch (Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
createDesktop();
createInput();
}
private void createInput()
{
input.btnCalculate.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
calcProduct();
}
});
input.pnlInput.add(input.btnCalculate,
new GridBagConstraints(4, 3, 2, 1, 0.0, 0.0,
GridBagConstraints.WEST,
GridBagConstraints.NONE,
new Insets(0, 0, 2, 0), 45, 0));
desktop.add(input);
input.setVisible(true);
}
private void calcProduct()
{
output1 = new OutputFrame("Dimensions", true, true, true, true, calcNew.tableData1, header1);
output2 = new OutputFrame("Dimensionless Numbers", true, true, true, true, calcNew.tableData2, header2);
output1.setBounds(20,20,700,300);
output2.setBounds(40,40,700,300);
desktop.add(output1);
desktop.add(output2);
output1.setVisible(true);
output2.setVisible(true);
}
}
Wie man erkennen kann wird die funktion calcProduct() aufgerufen, wenn ein Button gedrückt wird. In dieser Funktion werden zwei Fenster (output1 + 2) geöffnet.
Wenn ich den Button jetzt mehrmals drücke werden immer wieder neue Fenster geöffnet.
Ist es irgendwie möglich zu prüfen, ob die Fenster (output1+2) bereits initialisiert wurden und damit bereits geöffnet sind? Das heißt es sind immer nur zwei output-Fenster zu sehen?
Danke