Hallo,
ich bin neu hier und hoffe ihr könnte mir weiter helfen
Ich habe eine Klasse, welche von JButton erbt.
Mehrere davon will ich nun in ein Panel mit einem GridLayout darstellen.
Wenn ich bei folgenden Code JButtons erzeuge funktioniert auch alle wunderbar.
Wenn ich nun aber meine Klasse "Feld" nehmen, welche von JButton erbt, werden alle Button oben links übereinander dargestellt.
Die Klasse Feld:
Ich habe schon Google zu rate gezogen, aber nichts passendes gefunden ;-)
Ich hoffe die Code-Ausschnitte reichen. Der obere Code wird im Konstruktor der Klasse "Flaeche", welche von JFrame erbt, ausgeführt.
Wieso geht das mit JButtons, aber nicht mit meiner davon geerbten Klasse?
Danke für eure Hilfe.
Mit freundlichen Grüßen
Benjamin
ich bin neu hier und hoffe ihr könnte mir weiter helfen
Ich habe eine Klasse, welche von JButton erbt.
Mehrere davon will ich nun in ein Panel mit einem GridLayout darstellen.
Wenn ich bei folgenden Code JButtons erzeuge funktioniert auch alle wunderbar.
Wenn ich nun aber meine Klasse "Feld" nehmen, welche von JButton erbt, werden alle Button oben links übereinander dargestellt.
Java:
pane = new JPanel();
buttons = new Feld[width][height];
pane.setLayout(new GridLayout(width,height,gap,gap));
for(int x=0; x < width; x++){
for(int y=0; y < height; y++){
buttons[x][y] = new Feld(""+x+y);
buttons[x][y].setPos(x, y);
pane.add(buttons[x][y]);
}
}
this.setSize(width * 100, height * 100);
this.add(pane);
Die Klasse Feld:
Java:
public class Feld extends JButton{
private static final long serialVersionUID = 1L;
public Feld(String Name){
super(Name);
}
private int X;
private int Y;
public void setPos(int newX, int newY) {
X = newX;
Y = newY;
}
public int getX(){
return X;
}
public int getY(){
return Y;
}
Ich habe schon Google zu rate gezogen, aber nichts passendes gefunden ;-)
Ich hoffe die Code-Ausschnitte reichen. Der obere Code wird im Konstruktor der Klasse "Flaeche", welche von JFrame erbt, ausgeführt.
Wieso geht das mit JButtons, aber nicht mit meiner davon geerbten Klasse?
Danke für eure Hilfe.
Mit freundlichen Grüßen
Benjamin