hej!
nie orientuje sie ktos jak w javie rysowac linie z punktu A do B, potem z B do C itd,ale tak by za kazdym razem pojawiala sie nowa linia,a poprzednie nie znikaly.staralem sie wrzucac poszczegolne wspolrzedne do tablicy, ale jakos nie chce zadzialac. dane kolenych punktow sa pobierane z 2 pol tekstowych.
0
0
Witam
Proponuję takie rozwiązanie:
import javax.swing.;
import java.awt.;
import java.util.*;
public class tst
{
public Vector punkty;
public JPanel canvas;
public tst()
{
punkty = new Vector();
JFrame frm = new JFrame();
frm.getContentPane().setLayout(new BorderLayout());
frm.setDefaultCloseOperatio(JFrame.DISPOSE_ON_CLOSE);
canvas = new JPanel()
{
public void paint(Graphics g)
{
super.paint(g);
rysujLinie(g);
}
};
frm.getContentPane().add(canvas);
frm.setSize(300,400);
frm.setVisible(true);
}
public void rysujLinie(Graphics g)
{
for (int i=1;i<punkty.size();i++)
{
Point p1 = (Point)punkty.elementAt(i-1);
Point p2 = (Point)punkty.elementAt(i);
g.drawLine(p1.x,p1.y,p2.x,p2.y);
}
}
public void dodajPunkt(int x, int y)
{
punkty.add(new Point(x,y));
canvas.repaint();
}
public static void main(String [] args)
{
tst t = new tst();
//dodanie punktów
t.dodajPunkt(50,20);
t.dodajPunkt(70,30);
t.dodajPunkt(45,80);
}
}
Pozdrawiam