swing:icons

Εικόνες (ImageIcons)

Η κλάση που υποστηρίζει εικόνες στο Swing είναι η κλάση ImageIcon η οποία επιτρέπει την δημιουργία μιας εικόνας που μπορείτε να την χρησιμοποιήσετε στην συνέχεια σε κάποια αντικείμενο των κλάσεων JLabel ή JButton, όπως το παρακάτω παράδειγμα με χρήση της κλάσης JLabel

  ImageIcon icon = new ImageIcon("images/middle.gif",
                  "a pretty but meaningless splat");
 
  JLabel label1 = new JLabel("Image and Text", icon, JLabel.LEFT);

Μεταβάλλοντας το μέγεθος μιας εικόνας

Αν θέλετε να αλλάξετε τις διαστάσεις μιας εικόνας πριν την τοποθετήσετε μέσα στο JComponent της επιλογής σας μπορείτε να το κάνετε, αλλά όχι με χρήση της κλάσης ImageIcon. Ο πιο απλός τρόπος είναι να χρησιμοποιήσετε την κλάσης java.awt.Image η οποία προσφέρει και δυνατότητα μεταβολής του μεγέθους της εικόνας. Ένας τρόπος για να το κάνετε είναι ο παρακάτω κώδικας.

  ImageIcon icon = new ImageIcon("images/middle.gif", "a pretty but meaningless splat");
  Image image = icon.getImage().getScaledInstance(newWidth, newHeight, Image.SCALE_DEFAULT);
  icon = new ImageIcon(image);

Οι επιλογές που έχετε αναφορικά με την τελευταία παράμετρο της μεθόδου getScaledInstance είναι οι παρακάτω.

  • Image.SCALE_DEFAULT: Use the default image-scaling algorithm.
  • Image.SCALE_FAST: Choose an image-scaling algorithm that gives higher priority to scaling speed than smoothness of the scaled image.
  • Image.SCALE_SMOOTH: Choose an image-scaling algorithm that gives higher priority to image smoothness than scaling speed.
  • Image.SCALE_AREA_AVERAGING: Use the Area Averaging image scaling algorithm.
swing/icons.txt · Last modified: 2016/02/26 11:15 (external edit)