Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    480

    [Java] Visualizzare mappe diverse con pulsanti

    Posso chiederti un'altra cosa ?
    Ho associato a due jbutton due continenti diversi, e vorrei fare in modo che ad uno corrisponda l'europa ed all'altro l'africa-asia.
    Allora, nella mia classe ho fatto così, nel costruttore:
    codice:
     public PVEstimation() throws Exception {
            initComponents();
            URL mapUrl = new URL("http://maps.googleapis.com/maps/api/staticmap?center=Monaco,Germania&zoom=4&size=600x600&sensor=false");
            BufferedImage mapImage = ImageIO.read(mapUrl);
    
            mapHolder = new JLabel(new ImageIcon(mapImage));
            framePanel.setLayout(new BorderLayout());
    
            framePanel.add(mapHolder, BorderLayout.CENTER);
        }
    in modo tale che mi visualizzi una mappa all'apertura dell'interfaccia.

    poi ho associato ai due bottoni questo, per l'Africa:
    codice:
    private void africaActionPerformed(java.awt.event.ActionEvent evt) {                                       
            
            try {
                URL mapUrl = new URL("http://maps.googleapis.com/maps/api/staticmap?center=Al%20Hofuf,Saudi%20Arabia&zoom=2&size=600x600&sensor=false");
                BufferedImage mapImage = ImageIO.read(mapUrl);
                
                mapHolder = new JLabel(new ImageIcon(mapImage));
                framePanel.setLayout(new BorderLayout());
                
                framePanel.add(mapHolder, BorderLayout.CENTER);
                
                File dir = new File("dirIniziale\\Africa");
    
                DefaultComboBoxModel modello = new DefaultComboBoxModel();
                for (File f : dir.listFiles()) {
                    modello.addElement(new FileItem(f));
                }
    
                menuCitta.setModel(modello);
                AutoCompletamento.enable(menuCitta);
                pathname.setContinente("Africa");
            } catch (MalformedURLException ex) {
                Logger.getLogger(PVEstimation.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IOException ex) {
                Logger.getLogger(PVEstimation.class.getName()).log(Level.SEVERE, null, ex);
            }
          }
    Per l'Europa:
    codice:
    private void europaActionPerformed(java.awt.event.ActionEvent evt) {                                       
            try {
                URL mapUrl = new URL("http://maps.googleapis.com/maps/api/staticmap?center=Monaco,Germania&zoom=4&size=600x600&sensor=false");
                BufferedImage mapImage = ImageIO.read(mapUrl);
                
                mapHolder = new JLabel(new ImageIcon(mapImage));
                framePanel.setLayout(new BorderLayout());
                
                framePanel.add(mapHolder, BorderLayout.CENTER);
                File dir = new File("dirIniziale\\Europa");
    
                DefaultComboBoxModel modello = new DefaultComboBoxModel();
                for (File f : dir.listFiles()) {
                    modello.addElement(new FileItem(f));
                }
    
                menuCitta.setModel(modello);
                AutoCompletamento.enable(menuCitta);
                pathname.setContinente("Europa");
            } catch (MalformedURLException ex) {
                Logger.getLogger(PVEstimation.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IOException ex) {
                Logger.getLogger(PVEstimation.class.getName()).log(Level.SEVERE, null, ex);
            }
    }
    ma non va..mi potresti dire dove sbaglio?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da roquentin Visualizza il messaggio
    ma non va..mi potresti dire dove sbaglio?
    Non va ... in che senso? Cioè cosa non va? (non compila? lancia eccezione? altro?)

    Poi scusa, framePanel viene creato dove? (non vedo dal codice) E poi cosa ne fai? (idem, non si vede dal codice postato)

    Inoltre, hai già come minimo 2 pezzi di codice che fanno una logica praticamente uguale con solo, per quanto vedo, dati differenti. Cosa suggerirebbe di fare il buon senso?

    AutoCompletamento.enable(menuCitta);

    Se AutoCompletamento è una classe .... mi puzza un po'.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    480
    Nel senso che compila ma non mi cambia l'immagine al click sul bottone europa o africa.
    Atucompletamento è una classe che richiamo per appunto l'autocompletamento dei nomi delle città nella jcombobox "menuCitta"

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2014
    Messaggi
    480
    Ok grazie. Ho risolto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.