Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    dimensioni ImageIcon

    Salve ragazzi!

    Ho un problema con la classe java ImageIcon.
    Le dimensioni dell'oggetto (in pixel) che mi vengono restituite sono errate ... o meglio ... sono un chiaro segno d'errore : risultano entrambe uguali a -1!!!

    Vi allego il codice.

    // inizio codice

    package ematramu.utilita;

    import javax.swing.*;

    public class PreparaListaImmagini{
    public static void main(String [] args){
    ImageIcon immagine = new ImageIcon("nomeImmagine.jpg");
    int larghezza = immagine.getIconWidth();
    int altezza = immagine.getIconHeight();
    System.out.println("larghezza : "+larghezza);
    System.out.println("altezza : "+altezza);
    }
    }

    // fine codice

    In cosa sbaglio?

    p.s.(L'immagine in questione e' nella cartella 'utilita', .. la cartella del package per intenderci).

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    1,798
    Non viene trovata l'immagine, quindi ti restituisce
    delle dimensioni negative. Prova a spostare l'immagine
    di prova nella stessa directory del file .class e riprova.

    Ciao.
    Slack? Smack!

  3. #3
    No.. non va!

    L'immagine e' nella stessa cartella del file .class ...

    Qualche altra idea?

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    1,798
    Non va?
    Eccoti un esempio funzionante:
    codice:
    import javax.swing.ImageIcon;
    import javax.swing.JLabel;
    
    public class JCarta extends JLabel {
    
            protected ImageIcon immagine;
    
            public JCarta(String file) {
                    super(new ImageIcon(file));
            }
    
            public static void main(String[] args) {
                    final javax.swing.JFrame frame = new javax.swing.JFrame("CARTE DA GIUOCO");
                    frame.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
                    int num = 9;
                    frame.getContentPane().setLayout(new java.awt.GridLayout(1, num, 5, 5));
                    JCarta[] carte = new JCarta[num];
                    for (int i = 0; i < num; i++) {
                            carte[i] = new JCarta("images/" + (i + 1) + ".jpg");
                            frame.getContentPane().add(carte[i]);
                    }
                    javax.swing.SwingUtilities.invokeLater(new Thread() {
                            public void run() {
                                    frame.pack();
                                    frame.show();
                            }
                    });
            }
    }
    ed il risultato nell'immagine allegata.
    Slack? Smack!

  5. #5
    nel titolo della discussione dobbiamo specificare anche
    il linguaggio utilizzato... in questo caso [JAVA].
    ...Terrible warlords, good warlords, and an english song

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 © 2024 vBulletin Solutions, Inc. All rights reserved.