Per Robot lo (0,0) è l'angolo in alto-sinistra dello schermo. Nel tuo panello (0,0) è l'angolo in alto-sinistra del pannello stesso.Originariamente inviato da fermat
ah nn sapevo di questa differenza.
Sì. Innanzitutto vedo che nel pannello disegni una immagine. È questa la immagine da cui devi estrarre il rettangolo, giusto? Perché se la immagine ha origine nella origine (0,0) del pannello (e dal codice deduco che è così), allora le coordinate nel pannello sono anche corrette per la immagine. E quindi potresti prendere una sotto-immagine di questa. Vedi il getSubimage di BufferedImage.Originariamente inviato da fermat
l'unico modo alternativo che mi viene in mente è impostare l'area direttamente sullo schermo, ma nn so se è fattibile in java.
qualche alternativa c'è?
Altrimenti se vuoi usare Robot (ma non è una bellissima soluzione), ti tocca "traslare" le coordinate. Vedi ad esempio convertPointToScreen (e gli altri metodi di conversione) in javax.swing.SwingUtilities.
Comunque nota che da Java 6 il MouseEvent fornisce anche le coordinate relative allo schermo.