Hallo liebe Leute,
Ich bin erneut an meine Java-Grenzen gestoßen und möchte euch um Rat / Hilfe bitten.
Ich zeichne aus einem Array heraus mit Graphics2D beziehungsweise Line2D eine Linie auf ein BufferedImage.
Sieht im Endeffekt so aus:
Mein Problem hierbei ist nun, dass das 1. g2.draw erst gezeichnet wird, wenn ich die Scrollbalken bewege oder das Fenster vergrößere, verkleiner, etc., ABER g2.drawString und das 2. g2.draw sofort gezeichnet wird.
Woran könnte das liegen?
Restlicher Code wird auf verlangen natürlich nachgeliefert.
Vielen Dank!
Ruben Knoch
Ich bin erneut an meine Java-Grenzen gestoßen und möchte euch um Rat / Hilfe bitten.
Ich zeichne aus einem Array heraus mit Graphics2D beziehungsweise Line2D eine Linie auf ein BufferedImage.
Sieht im Endeffekt so aus:
Java:
public void Zeichnen()
{
Graphics g = image.createGraphics();
Graphics2D g2 = (Graphics2D)g;
g2.setColor(color);
a=0;
b=1;
c=2;
d=3;
for(int i = 0; i<=this.laenge-2; i++)
{
g2.draw(new Line2D.Double(ArrayNummer2[a],ArrayNummer2[b],ArrayNummer2[c],ArrayNummer2[d]));
g2.drawString("HelloWorld", 100,100);
g2.draw(new Line2D.Double(100,100,200,200));
a += +2;
b += +2;
c += +2;
d += +2;
//System.out.println(i);
}
System.out.println("Zeichnen beenden!");
}
Mein Problem hierbei ist nun, dass das 1. g2.draw erst gezeichnet wird, wenn ich die Scrollbalken bewege oder das Fenster vergrößere, verkleiner, etc., ABER g2.drawString und das 2. g2.draw sofort gezeichnet wird.
Woran könnte das liegen?
Restlicher Code wird auf verlangen natürlich nachgeliefert.
Vielen Dank!
Ruben Knoch