Hallo zusammen,
nachdem ich im Forum nichts finden konnte, was mir geholfen hat, nun die Frage an euch:
Ich habe zwei Klassen, die eine erzeugt die View, wobei für den Frame das Borderlayout gesetzt wird:
In der Klasse DrawboardPlayerBoard wird nun die entsprechende Graphik gezeichnet, die in das linke Panel eingefügt werden soll:
Was mich an der ganzen Sache wundert, ist dass tatsächlich was gezeichnet wird, aber egal, welchen Zeichenbefehl man gibt (Rechteck/Kreis, Farbe, Größe, ...), es erscheint immer nur ein kleines graues Quadrat. Deswegen bin ich etwas verwundert, weil die Zeichnung falsch übergeben wird.
Hat jemand schon mal ähnliche Erfahrungen gemacht? Ich bin langsam mit meinem Latein am Ende...
Vielen Dank schon mal für eure Ideen!
Liebe Grüße
Lela
nachdem ich im Forum nichts finden konnte, was mir geholfen hat, nun die Frage an euch:
Ich habe zwei Klassen, die eine erzeugt die View, wobei für den Frame das Borderlayout gesetzt wird:
Java:
public class HilfsklasseDrawboard extends JFrame {
@Serial
private static final long serialVersionUID = 1L;
private final DrawboardPlayerBoard drawboardplayerboard;
public HilfsklasseDrawboard(){
drawboardplayerboard = new DrawboardPlayerBoard();
}
public static void main(String[] args) {
JFrame frame = new JFrame("BorderLayout");
frame.setLayout(new BorderLayout());
frame.setVisible(true);
DrawboardPlayerBoard drawboardplayerboard = new DrawboardPlayerBoard();
...
JPanel panelLeft = new JPanel();
panelLeft.setSize(400,400);
panelLeft.add(drawboardplayerboard);
drawboardplayerboard.setVisible(true);
...
Container c = frame.getContentPane();
c.add(panelLeft, BorderLayout.WEST);
}
}
In der Klasse DrawboardPlayerBoard wird nun die entsprechende Graphik gezeichnet, die in das linke Panel eingefügt werden soll:
Code:
public class DrawboardPlayerBoard extends JPanel {
@Serial
private static final long serialVersionUID = 1L;
private Graphics2D g2D;
public DrawboardPlayerBoard(){
}
@Override
protected void paintComponent(Graphics g){
super.paintComponent(g);
g2D = (Graphics2D) g;
g2D.setColor(Color.black);
g2D.drawRect(160, 200, 40, 40);
g2D.setColor(Color.gray);
g2D.fillRect(160, 200, 40, 40);
}
}
Was mich an der ganzen Sache wundert, ist dass tatsächlich was gezeichnet wird, aber egal, welchen Zeichenbefehl man gibt (Rechteck/Kreis, Farbe, Größe, ...), es erscheint immer nur ein kleines graues Quadrat. Deswegen bin ich etwas verwundert, weil die Zeichnung falsch übergeben wird.
Hat jemand schon mal ähnliche Erfahrungen gemacht? Ich bin langsam mit meinem Latein am Ende...
Vielen Dank schon mal für eure Ideen!
Liebe Grüße
Lela