Visualizzazione dei risultati da 1 a 3 su 3

Visualizzazione discussione

  1. #1

    JfileChooser con preview

    Salve,
    dovrei realizzare un'applicazione che utilizza un jfilechooser, ma vorrei visualizzare l'anteprima del file che sto aprendo.
    Ho scritto in un Jpanel che implementa PropertyChangeListener questo
    codice:
    public void propertyChange(PropertyChangeEvent evt) {
            String propertyName = evt.getPropertyName();
    
    
            // Make sure we are responding to the right event.
            if (propertyName.equals(JFileChooser.SELECTED_FILE_CHANGED_PROPERTY)) {
                File selection = (File) evt.getNewValue();
                String name;
    
    
                if (selection == null) {
                    return;
                } else {
                    name = selection.getAbsolutePath();
                }
    
    
                /*
                 * Make reasonably sure we have an image format that AWT can
                 * handle so we don't try to draw something silly.
                 */
                if ((name != null)
                        && name.toLowerCase().endsWith(".jpg")
                        || name.toLowerCase().endsWith(".jpeg")
                        || name.toLowerCase().endsWith(".gif")
                        || name.toLowerCase().endsWith(".png")) {
                    icon = new ImageIcon(name);
                    image = icon.getImage();
                    scaleImage();
                    repaint();
                }
            }
        }
    ovviamente l'ho trovato in rete, ho fatto un semplice copia e incolla

    Mentre nell'azione ho scritto questo
    codice:
    private String acquisisciFile() {
            JFileChooser fileChooser = this.controllo.getVista().getJfileChooser();
            PannelloMiniatura pMiniatura = new PannelloMiniatura(this.controllo.getVista());
           
            pMiniatura.getLabelCarica().setHorizontalTextPosition(SwingConstants.CENTER);
            pMiniatura.add(pMiniatura.getLabelCarica(), BorderLayout.CENTER);
            fileChooser.setAccessory(pMiniatura);
    
    
            fileChooser.addPropertyChangeListener(pMiniatura);
            
            fileChooser.setApproveButtonText("Apri Foto");
            fileChooser.setDialogTitle("Selezionare un file");
            int codice = fileChooser.showOpenDialog(this.controllo.getVista());
            if (codice == JFileChooser.APPROVE_OPTION) {
                File file = fileChooser.getSelectedFile();
                percorso = file.getPath();
                return percorso;
             } else if (codice == JFileChooser.CANCEL_OPTION) {
                logger.info("Comando apri annullato");
            }
            return null;
        }
    
    public void actionPerformed(ActionEvent e) {      
            PannelloMiniatura pannelloM = (PannelloMiniatura) this.controllo.getVista().getSottoVista(Costanti.PANNELLO_MINIATURA);
            String nomeFile = acquisisciFile();       
            if (nomeFile != null) {
                 icon = new ImageIcon(nomeFile);
                pannelloM.getLabelCarica().setIcon(icon);
    
    }

    Solo che non mi apre l'anteprima... dove sbaglio? qualcuno pò darmi suggerimenti?
    Grazie
    Ultima modifica di gattamelogna; 05-11-2013 a 18:54

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.