hallo,
ich habe 2 klassen: eine klasse Line extends JPanel in der durch die paintComponent methode eine linie gezeichnet werden soll und eine klasse, in der ich einen listener implementiere für ein checkboxmenuitem, das, wenn es selektiert ist, auf einem anderen panel bestimmte rechtecke, die auf diesem panel schon existieren, mittels der linien verbinden soll.
mein problem ist nun, dass die linien manchmal -eigentlich ziemlich oft - nicht richtig angezeigt werden und ich kann nicht rausfinden warum. mit tests hab ich rausgefunden, dass schon die richtigen kooridnaten ausgelesen werden und in die drawLine methode eingesetzt werden, nur zeichnen tut die nicht richtig.
ich rufe
auf, wobei ich für x1 und y1 die vom ersten rechteck getX() und getY() nehme und für x2 und y2 vom zweiten rechteck getX() und getY() verwende.
gibt es irgendwelche speziellen dinge bei der draw methode zu beachten? ich versteh das problem nicht, weil mir eben mittels der system.out.prints die richtigen koordinaten ausgegeben werden??? :bahnhof:
hoffe es kann mir jemand helfen. ist wirklich wichtig. danke.
karlo
ich habe 2 klassen: eine klasse Line extends JPanel in der durch die paintComponent methode eine linie gezeichnet werden soll und eine klasse, in der ich einen listener implementiere für ein checkboxmenuitem, das, wenn es selektiert ist, auf einem anderen panel bestimmte rechtecke, die auf diesem panel schon existieren, mittels der linien verbinden soll.
mein problem ist nun, dass die linien manchmal -eigentlich ziemlich oft - nicht richtig angezeigt werden und ich kann nicht rausfinden warum. mit tests hab ich rausgefunden, dass schon die richtigen kooridnaten ausgelesen werden und in die drawLine methode eingesetzt werden, nur zeichnen tut die nicht richtig.
ich rufe
Code:
g2d.draw(new Line2D.Double(x1, y1, x2, y2));
auf, wobei ich für x1 und y1 die vom ersten rechteck getX() und getY() nehme und für x2 und y2 vom zweiten rechteck getX() und getY() verwende.
gibt es irgendwelche speziellen dinge bei der draw methode zu beachten? ich versteh das problem nicht, weil mir eben mittels der system.out.prints die richtigen koordinaten ausgegeben werden??? :bahnhof:
hoffe es kann mir jemand helfen. ist wirklich wichtig. danke.
karlo