Hallo,
ich würde gerne wissen, wie man eigene Swing Elemente erstellen kann, die man anschließend über den 'add' command einem JPanel hinzufügen kann.
Wenn ich zum Beispiel ein Strichmännchen malen will, und das anschließend einem JPanel hinzufügen will.
Ich habe folgende Klasse für das Stichmännchen erstellt:
Man erstellt also ein Objekt der Klasse 'actor' mit x und y Koordinate des Mittelpunktes und malt von dort aus das Strichmännchen fertig. (Das im Code momentan nur ein Kreis gezeichnet wird ist mir schon klar!)
Wenn ich jetzt versuche das Männchen hinzuzufügen, mit
weiß Java natürlich nicht, was es mit der Methode 'add' und einem Parameter vom Typ actor anfangen soll. Muss ich meiner Klasse 'actor' noch etwas vererben, oder muss sie etwas bestimmtes Implementieren?
Mfg Hirnspender
ich würde gerne wissen, wie man eigene Swing Elemente erstellen kann, die man anschließend über den 'add' command einem JPanel hinzufügen kann.
Wenn ich zum Beispiel ein Strichmännchen malen will, und das anschließend einem JPanel hinzufügen will.
Ich habe folgende Klasse für das Stichmännchen erstellt:
Java:
import java.awt.*;
/* Klasse zur Implementierung des Aktors in Form
eines Strichmaennchens */
public class actor {
private int x=0; /* Koordinaten des Mittelpunktes */
private int y=0;
public actor(int a, int b) {
x=a;
y=b;
}
public void setX(int a) { x=a; }
public void setY(int b) { y=b; }
public void paint(Graphics g) {
g.drawArc(x,y,20,20,0,360);
}
}
Man erstellt also ein Objekt der Klasse 'actor' mit x und y Koordinate des Mittelpunktes und malt von dort aus das Strichmännchen fertig. (Das im Code momentan nur ein Kreis gezeichnet wird ist mir schon klar!)
Wenn ich jetzt versuche das Männchen hinzuzufügen, mit
Java:
JPanel seqdiag = new JPanel();
actor akt_test = new actor(50,50);
seqdiag.add(akt_test);
weiß Java natürlich nicht, was es mit der Methode 'add' und einem Parameter vom Typ actor anfangen soll. Muss ich meiner Klasse 'actor' noch etwas vererben, oder muss sie etwas bestimmtes Implementieren?
Mfg Hirnspender
Zuletzt bearbeitet: