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(); } }

Rispondi quotando