Hallo zusammen,
ich kaempfe mich gerade durch die Erstellung von GUIs.
Jetzt stehe ich auf dem Schlauch und braeuchte ein wenig Hilfe.
Ich moechte verschiedene Klassen schreiben, die alle jeweils ein Panel mit verschiedenen Komponenten befuellt.
Dann moechte ich eine mainFrame KLasse schreiben, welche eine Instanz der einzelnen Panelklassen erzeugt
und diese Instanz getContentPane.add(instanz) hinzufuegt.
HIerzu bin ich testweise wie folgt vorgegangen:
Klasse MainFrame
Klasse FirstPane
Klasse Start
Nun bekomme ich allerdings folgende Fehlermeldung:
The method add(Component) in the type Container is not applicable for the argument.
Ist diese Vorgehensweise grundsaetzlich in Ordnung oder macht man sowas besser anders?
Wenn das so okay ist, kann mir einer sagen, wo mein Fehler liegt?
Vielen Dank fuer eure Unterstuetzung
ich kaempfe mich gerade durch die Erstellung von GUIs.
Jetzt stehe ich auf dem Schlauch und braeuchte ein wenig Hilfe.
Ich moechte verschiedene Klassen schreiben, die alle jeweils ein Panel mit verschiedenen Komponenten befuellt.
Dann moechte ich eine mainFrame KLasse schreiben, welche eine Instanz der einzelnen Panelklassen erzeugt
und diese Instanz getContentPane.add(instanz) hinzufuegt.
HIerzu bin ich testweise wie folgt vorgegangen:
Klasse MainFrame
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MainFrame extends JFrame
{
private JFrame frame;
public FirstPane panel;
// Konstruktor
// --------------
public MainFrame()
{
this.frame = new JFrame();
this.frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.frame.setSize(1024, 768);
this.panel = new FirstPane();
}
// Fuege Panel der ContentPane hinzu
// ---------------------------------------------
public void setzePanel()
{
this.frame.getContentPane().add(panel);
this.frame.validate();
}
// Frame anzeigen
// -----------------
public void frameShow()
{
this.frame.setVisible(true);
}
}
Klasse FirstPane
Code:
import javax.swing.GroupLayout;
import javax.swing.JPanel;
public class FirstPane
{
private JPanel myPanel;
// Konstruktor
// -------------
public FirstPane()
{
myPanel = new JPanel();
myPanel.setBackground(new java.awt.Color(255,255,204));
myPanel.setVisible(true);
GroupLayout layout = new GroupLayout(myPanel);
myPanel.setLayout(layout);
}
}
Klasse Start
Code:
public class Start
{
/**
* @param args
*/
public static void main(String[] args)
{
MainFrame gui = new MainFrame();
gui.frameShow();
}
}
Nun bekomme ich allerdings folgende Fehlermeldung:
The method add(Component) in the type Container is not applicable for the argument.
Ist diese Vorgehensweise grundsaetzlich in Ordnung oder macht man sowas besser anders?
Wenn das so okay ist, kann mir einer sagen, wo mein Fehler liegt?
Vielen Dank fuer eure Unterstuetzung