Hi,
ja, ich weiß, ich hab doch gerade erst eine Frage gestellt, aber sogleich drängt sich mir die nächste auf - sorry.
Ich hab gerade etwas Zeit und versuche ein von mir vor ca. 2 Jahren geschriebenes Programm etwas aufzupeppen und zugleich auch ein bisschen sauberer zu programmieren - an letzterem scheiter ich vor lauter Unwissenheit aber ganz massiv
Nun wollte ich das Objekt (es wird mal ein Gitter), das ich vorher einfach in die paintComponent des JPanels geschrieben habe, in eine eigene Datei auslagern, da ich mir gedacht hab, dass das doch eigentlich ein ganz nettes Objekt ist, das es verdient hat, auch mal als solches behandelt zu werden. Dumm nur, dass es sich nicht zeichnet
Ich vermute ja mal, dass es am Ort des repaint-Aufrufes liegt, aber auch andere Versuche, das repaint zu platzieren haben leider keinen Erfolg gezeigt.
Was muss ich ändern, damit dieses Gitter auf das PicturePanel gezeichnet wird?
Danke und Grüße,
muemmel_0811
ja, ich weiß, ich hab doch gerade erst eine Frage gestellt, aber sogleich drängt sich mir die nächste auf - sorry.
Ich hab gerade etwas Zeit und versuche ein von mir vor ca. 2 Jahren geschriebenes Programm etwas aufzupeppen und zugleich auch ein bisschen sauberer zu programmieren - an letzterem scheiter ich vor lauter Unwissenheit aber ganz massiv
Nun wollte ich das Objekt (es wird mal ein Gitter), das ich vorher einfach in die paintComponent des JPanels geschrieben habe, in eine eigene Datei auslagern, da ich mir gedacht hab, dass das doch eigentlich ein ganz nettes Objekt ist, das es verdient hat, auch mal als solches behandelt zu werden. Dumm nur, dass es sich nicht zeichnet
Code:
Akk_q.java
...
Color col = Color.pink;
public class PicturePanel extends JPanel{
private static final long serialVersionUID = 1L;
PicturePanel(){
setBackground(new Color(255,255,255));
setLayout(null);
}
public void paintCompoment(Graphics g) {
super.paintComponent(g);
Grid grid = new Grid();
grid.drawGrid(g, col);
}
}
...
#############
Grid.java
public class Grid {
Akk_q aq;
Grid() {
}
public void drawGrid(Graphics g, Color c) {
Graphics2D g2 = (Graphics2D) g;
g2.setColor(c);
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
BasicStroke stil0 = new BasicStroke(5.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER);
g2.setStroke(stil0);
Line2D.Float stab0 = new Line2D.Float(30.0f, 40.0f, 30.0f, 130.0f);
g2.draw(stab0);
aq.repaint();
}
}
Was muss ich ändern, damit dieses Gitter auf das PicturePanel gezeichnet wird?
Danke und Grüße,
muemmel_0811