Ho un JPanel sul quale con il mosue posso disegnare linee, fino a qui ok; il problema si pone quando voglio visualizzare la linea PRIMA di disegnarla definitivamente, per intenderci "clicco" in un punto e tenendo il tasto spinto trascino il cursore (man mano che muovo il mouse si sposta anche la linea) e quando rilascio la linea si disegna fino al punto di rilascio.
Ok, riesco a fare anche questo, ma il problema è che quando vado a disegnare un'altra linea la prima mi viene cancellata....![]()
![]()
Insomma vi posto il codice....
Cerco di riassumere:il fatto è che dopo che nel metodo disegna() ho disegnato la linea se aggiorno la JPanel (magari per disegnare un'altra linea) la precedente mi scompare...codice:private void jPanel2MousePressed(java.awt.event.MouseEvent evt) { // Punto di inizio x1 = evt.getX(); y1 = evt.getY(); System.out.println(x1 +" " +y1); } private void jPanel2MouseReleased(java.awt.event.MouseEvent evt) { // Punto finale x2 = evt.getX(); y2 = evt.getY(); disegna(); } private void jPanel2MouseDragged(java.awt.event.MouseEvent evt) { // Serve a visualizzare la linea che si sta tracciando jPanel2.repaint(); x2 = evt.getX(); y2 = evt.getY(); jPanel2.getGraphics().drawLine(x1,y1, x2, y2); } private void disegna(){ Graphics g = jPanel2.getGraphics(); g.drawLine(x1, y1, x2, y2); }![]()
Qualsiasi consiglio è benvenuto.....grazie

elf90 g77
Rispondi quotando