Hallo alle zusammen!
Ich stehe gerade auf dem Schlauch bei einem ganz normalen einfachen JFrame. Normalerweise lass ich mir das alles vom Visual Editor machen, doch irgendwie will der nicht installiert werden. Also das Problem ist, dass ich einen JFrame habe, bei dem ich setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); gesetzt habe. Wenn ich dieses dann starte kann ich es ohne Probleme per ALT+F4 oder dem Schliessen-Button schliessen, aber wenn ich jetzt eine JSplitPane als Component zum JFrame hinzufüge kann ich es nicht mehr schliessen.
Code:
Ich sollte mir langsam wirklich Gedanken machen nicht wieder in C# zu programmieren, da ist alles so schön und logisch ^^
Danke!
~Gachl
Ich stehe gerade auf dem Schlauch bei einem ganz normalen einfachen JFrame. Normalerweise lass ich mir das alles vom Visual Editor machen, doch irgendwie will der nicht installiert werden. Also das Problem ist, dass ich einen JFrame habe, bei dem ich setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); gesetzt habe. Wenn ich dieses dann starte kann ich es ohne Probleme per ALT+F4 oder dem Schliessen-Button schliessen, aber wenn ich jetzt eine JSplitPane als Component zum JFrame hinzufüge kann ich es nicht mehr schliessen.
Code:
Code:
package net.codefreak.epictd.ui;
import java.awt.*;
import javax.swing.*;
import net.codefreak.epictd.engine.GamePanel;
public class MainInterface extends JFrame {
private static final long serialVersionUID = -6246291781570145790L;
// Interface parts
private JPanel pnlGamePanel;
private JPanel pnlControls;
private JSplitPane pnlBasePanel;
private JTextArea txtTowerInfo;
private JList lstTowers;
private JButton btnNextWave;
public MainInterface() {
super();
initGUI();
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
setLayout(new BorderLayout());
pack();
setSize(800, 600);
pnlGamePanel = new JPanel();
pnlControls = new JPanel();
pnlBasePanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT, pnlGamePanel, pnlControls);
txtTowerInfo = new JTextArea();
lstTowers = new JList();
btnNextWave = new JButton("Next wave");
pnlGamePanel.setBackground(Color.BLACK);
pnlControls.setBackground(Color.red);
pnlBasePanel.setDividerLocation(700);
add(pnlBasePanel, BorderLayout.CENTER); // Wenn ich diese Zeile auskommentiere lässt sich das JFrame problemlos schliessen.
} catch (Exception e) {
e.printStackTrace();
}
}
}
Danke!
~Gachl