Normal
Jo die paint Methoden von JComponent zu überschreiben ist eine verkorkste Angelegenheit, da sich alles ineinander verschachtelt. Viel einfacher ist es sich das Graphics Objekt des Frame zu angeln und sich eigene Klassen(z.B.Kreis) schreiben welche das Graphics Object zum zeichnen nutzen.[code]Frame.getContentPane().getGraphics()[/code][code]Graphics2D g= (Graphics2d) Frame.getContentPane().getGraphics();[/code][code=Java]import javax.swing.*;import java.awt.*;/** * * @author Nature One */class Kreis{ Graphics G; int x,y,r; public Kreis(Graphics g) { G=g; } public void init(int px,int py,int pz) { x=px;y=py;r=pz; } public void zeichne() { G.drawOval(x, y,r, r); }}public class JZeichnen extends JFrame{ Kreis K; public JZeichnen() { setBounds(0,0,600,400); K=new Kreis(getContentPane().getGraphics()); }}[/code]
Jo die paint Methoden von JComponent zu überschreiben ist eine verkorkste Angelegenheit, da sich alles ineinander verschachtelt. Viel einfacher ist es sich das Graphics Objekt des Frame zu angeln und sich eigene Klassen(z.B.Kreis) schreiben welche das Graphics Object zum zeichnen nutzen.
[code]Frame.getContentPane().getGraphics()[/code]
[code]Graphics2D g= (Graphics2d) Frame.getContentPane().getGraphics();[/code]
[code=Java]import javax.swing.*;
import java.awt.*;
/**
*
* @author Nature One
*/
class Kreis
{
Graphics G;
int x,y,r;
public Kreis(Graphics g)
G=g;
}
public void init(int px,int py,int pz)
x=px;y=py;r=pz;
public void zeichne()
G.drawOval(x, y,r, r);
public class JZeichnen extends JFrame
Kreis K;
public JZeichnen()
setBounds(0,0,600,400);
K=new Kreis(getContentPane().getGraphics());
}[/code]