Hallo zusammen,
ich wollte mich mal in die Implementierung von eigenen Komponenten reinarbeiten. Einfach nur mal schnuppern. Ich habe mir dazu ein GUI geschrieben. In diesem GUI existiert natürlich ein JPanel.
Außerdem habe ich mir eine Klasse geschrieben, die von JComponent erbt und dort die Methode "paintComponent" überschrieben. Die Klasse soll bis jetzt einfach nur ein Rechteck zeichnen.
Das ist also meine Rechteck-Komponente... Nun will ich diese Rechteck-Komponente in das JPanel packen. Dazu rufe ich in meiner JPanel-Klasse die add-Methode auf.
Wenn ich nun das Programm ausführe, wird jedoch kein Rechteck gezeichnet. Auch wenn ich einen LayoutManager benutze ändert sich nichts. Es wird also kein "RectComp" dargestellt.
Hat jemand eine Idee, wieso nichts gezeichnet wird? Wenn ich das Rechteck direkt in meiner JPanel-Klasse in der Methode "paintComponent" zeichne, funktioniert es einwandfrei. Möchte aber gerne eine eigene JComponent-Klasse für das Rechteck.
Wäre für Eure Hilfe dankbar!
Gruß,
Tente
ich wollte mich mal in die Implementierung von eigenen Komponenten reinarbeiten. Einfach nur mal schnuppern. Ich habe mir dazu ein GUI geschrieben. In diesem GUI existiert natürlich ein JPanel.
Außerdem habe ich mir eine Klasse geschrieben, die von JComponent erbt und dort die Methode "paintComponent" überschrieben. Die Klasse soll bis jetzt einfach nur ein Rechteck zeichnen.
Java:
public class RectComp extends JComponent {
public RectComp(){
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawRect(10, 10, 200, 100);
}
}
Das ist also meine Rechteck-Komponente... Nun will ich diese Rechteck-Komponente in das JPanel packen. Dazu rufe ich in meiner JPanel-Klasse die add-Methode auf.
Java:
this.add(new RectComp());
Wenn ich nun das Programm ausführe, wird jedoch kein Rechteck gezeichnet. Auch wenn ich einen LayoutManager benutze ändert sich nichts. Es wird also kein "RectComp" dargestellt.
Hat jemand eine Idee, wieso nichts gezeichnet wird? Wenn ich das Rechteck direkt in meiner JPanel-Klasse in der Methode "paintComponent" zeichne, funktioniert es einwandfrei. Möchte aber gerne eine eigene JComponent-Klasse für das Rechteck.
Wäre für Eure Hilfe dankbar!
Gruß,
Tente