Ciao ragazzi! Ho un problema con il metodo paintComponent(). Devo creare una sorta di GPS, ho un frame con l'immagine di una mappa di sfondo e volevo posizionare un punto rosso che indica la posizione in base a delle coordinate che arrivano da un dispositivo esterno. Il mio problema è che come sfondo mi compare solo un piccolo riquadrino della mappa...non capisco dove sbaglio! Il codice è il seguente...qualsiasi aiuto è gradito!
codice:
public class GPSAwt extends JPanel{
Toolkit tk = getToolkit();
public static JPanel pannello;
private Image sfondo;
private Image punto;
protected DisplayMap dm;
protected int[][] mat;
public GPSAwt(){
configure();
}
public void configure(){
this.sfondo = new ImageIcon(tk.getImage(this.getClass().getResource("mappa.png"))).getImage();
this.punto = new ImageIcon(tk.getImage(this.getClass().getResource("punto.png"))).getImage();
this.dm = new DisplayMap();
//this.mat = new int[40][40];
this.mat = dm.getMatrix();
this.pannello = new JPanel();
pannello.setOpaque(false);
this.add(pannello);
aggiorna();
}
public void paintComponent(Graphics g) {
setOpaque(false);
g.drawImage(sfondo, 0, 0, null);
/*for(int x = 0; x<mat.length; x++){
for(int y = 0; y<mat.length; y++){
if(mat[x][y]==1){
g.drawImage(punto,y*800/mat[0].length, x*600/mat.length, null);
}
}
}*/
}
public void aggiorna() {
repaint();
}
}