Bueno, estaba tratando de hacer un programa el cual al pulsar sobre una ventana, se vaya dibujando una linea. Para hacer esto llegue a este punto:
Cita:
public class Dibujo {
public static void main(String[] args) {
Ventana a = new Ventana();
}
}
class Ventana extends JFrame implements MouseListener{
Pintar Pintado = new Pintar();
public Ventana(){
setVisible(true);
setBounds(100,100,600,600);
add(Pintado);
Pintado.repaint();
}
public void mouseClicked(MouseEvent arg0) {
Pintado.repaint();
}
public void mouseEntered(MouseEvent arg0) {}
public void mouseExited(MouseEvent arg0) {}
public void mousePressed(MouseEvent arg0) {
Pintado.repaint();
}
public void mouseReleased(MouseEvent arg0) {}
}
class Pintar extends JPanel{
int a = 100;
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawLine(100, 100, 200, a);
a+=200;
}
}
public static void main(String[] args) {
Ventana a = new Ventana();
}
}
class Ventana extends JFrame implements MouseListener{
Pintar Pintado = new Pintar();
public Ventana(){
setVisible(true);
setBounds(100,100,600,600);
add(Pintado);
Pintado.repaint();
}
public void mouseClicked(MouseEvent arg0) {
Pintado.repaint();
}
public void mouseEntered(MouseEvent arg0) {}
public void mouseExited(MouseEvent arg0) {}
public void mousePressed(MouseEvent arg0) {
Pintado.repaint();
}
public void mouseReleased(MouseEvent arg0) {}
}
class Pintar extends JPanel{
int a = 100;
public void paintComponent(Graphics g){
super.paintComponent(g);
g.drawLine(100, 100, 200, a);
a+=200;
}
}
En esas líneas de códigos trate de hacer que aparesca una linea en el JFrame, y luego al clickear sobre el JFrame, se hisiera otra línea mas(Para luego,pasarlo con las coordenadas X e Y del mouse y hacer que se dibujen las líneas), pero no logro que al hacer click se "repinte" y me aparesca la segunda línea.
Alguien sabe y me explicaria como funciona el paintCompoent? Y como debería usarlo en este caso.
Muchas gracias