Ik heb een probleem en kom er niet meer iut.
Ik heb een internal frame gemaakt. Daarin staat een button die een ander internal frame moet openen. Het lukt met wel om ipv een nieuw internal frame een gewoon JFrame maar ik wil echt binnen mijn venster blijven.
Ik heb het volgende gedaan. (het aanmaken van het mainwindow is vrij simpel. dus dat laat ik niet zien)
Ik heb in de main class twee methodes gemaakt.
1. 1e internal frame --> deze wordt via een menu bar aangeroepen
2. 2e internal frame
het tweede internalframe wordt geopend via de GUI van het eerste internalframe. Ik heb daarin een actionlistner gemaakt die roept de tweede methode aan in de class MainWindow.
MainWindow.java
firstFrame.java
secondFrame.java
Het aanmaken van de frame's is exact gelijk. Alleen de functie createGUI wordt anders. Nu is dat niet zo omdat ik wil uitsluiten dat ik fouten heb in het aanmaken van mijn GUI.
In de firstFrame class heb ik een actionlistner die roept de methode showSecondFrame in de MainWindow class aan.
Maar ik zie helemaal niks verschijnen. Ik heb express de functie voor het weergeven van de internalframes in de mainclass gezet zodat ik alle frame in 1 class heb en niet alle classes hoef door te zoeken.
Ik krijg ook geen Exception. En heb met Systeem.out.println over gekeken of hij iets oversloeg maar dat was niet het geval. Hij lijkt alles gewoon uit te voeren. Kan het niet wat ik wil?
Ik kom er niet meer uit
Ik heb een internal frame gemaakt. Daarin staat een button die een ander internal frame moet openen. Het lukt met wel om ipv een nieuw internal frame een gewoon JFrame maar ik wil echt binnen mijn venster blijven.
Ik heb het volgende gedaan. (het aanmaken van het mainwindow is vrij simpel. dus dat laat ik niet zien)
Ik heb in de main class twee methodes gemaakt.
1. 1e internal frame --> deze wordt via een menu bar aangeroepen
2. 2e internal frame
het tweede internalframe wordt geopend via de GUI van het eerste internalframe. Ik heb daarin een actionlistner gemaakt die roept de tweede methode aan in de class MainWindow.
MainWindow.java
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| public class MainWindow extends JFrame
implements ActionListener {
public void showFirstFrame()
{
firstFrame first = new firstFrame();
first.setVisible(true);
MainWindow.add(frame);
try {
first.setSelected(true);
} catch (java.beans.PropertyVetoException e) {}
}
public void showSecondFrame()
{
secondFrame second= new secondFrame();
second.setVisible(true);
MainWindow.add(frame);
try {
second.setSelected(true);
} catch (java.beans.PropertyVetoException e) {}
}
} |
firstFrame.java
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| public class firstFrame extends JInternalFrame {
public firstFrame () {
super("First",
true, //resizable
true, //closable
true, //maximizable
true);//iconifiable
createGUI() // Hiet wordt de button gemaakt
setSize(500,400);
setLocation(300,200);
}
} |
secondFrame.java
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| public class secondFrame extends JInternalFrame {
public secondFrame () {
super("Second",
true, //resizable
true, //closable
true, //maximizable
true);//iconifiable
createGUI() // Hiet wordt de button gemaakt
setSize(500,400);
setLocation(10,10);
}
} |
Het aanmaken van de frame's is exact gelijk. Alleen de functie createGUI wordt anders. Nu is dat niet zo omdat ik wil uitsluiten dat ik fouten heb in het aanmaken van mijn GUI.
In de firstFrame class heb ik een actionlistner die roept de methode showSecondFrame in de MainWindow class aan.
Maar ik zie helemaal niks verschijnen. Ik heb express de functie voor het weergeven van de internalframes in de mainclass gezet zodat ik alle frame in 1 class heb en niet alle classes hoef door te zoeken.
Ik krijg ook geen Exception. En heb met Systeem.out.println over gekeken of hij iets oversloeg maar dat was niet het geval. Hij lijkt alles gewoon uit te voeren. Kan het niet wat ik wil?
Ik kom er niet meer uit
Jochemmol