Usa le immagini come icone in Java

Sommario
Il interfacce utente Non sono fatti solo di finestre e contenitori, c'è un peso molto importante che ricade sull'aspetto grafico, a volte un'immagine dice molto di più di qualsiasi spiegazione si voglia fare.
Sotto quest'ultimo precetto abbiamo le icone, che sono piccole immagini con le quali possiamo illustrare alcune cose nell'interfaccia, ad esempio un pulsante per salvare un documento sotto forma di disco o un piccolo cestino che rappresenta l'azione di cancellazione, tutto queste cose ci fanno risparmiare spazio e rendono l'interfaccia molto più user-friendly.
Come accennato in precedenza, un'icona è una piccola immagine che usiamo per rappresentare qualcosa senza parole, in Giava possiamo incorporarli nelle applicazioni grafiche che costruiamo con i componenti di oscillazione. Affinché l'icona sia valida, deve essere in uno dei formati supportati da Giava come sono:
  • JPG.webp
  • GIF.webp
  • PNG
Pertanto, se abbiamo un'immagine in qualche altro formato che vogliamo utilizzare, dobbiamo convertirla in uno dei 3 già menzionati; inoltre, dobbiamo essere consapevoli che queste immagini devono essere archiviate in un percorso a cui la nostra applicazione ha accesso e autorizzazioni.
Per mostrare un'immagine come icona possiamo andare in classe ImmagineIcona del pacchetto javax.swing, con questo dobbiamo solo passare il percorso dell'immagine e il nome del file. Ad esempio vediamo questo codice:
ImageIcon ourIcon = new ImageIcon ("images/delete.gif.webp");

Se stiamo attenti vediamo che creiamo un'istanza del tipo ImmagineIcona, quindi nel costruttore della classe passiamo il percorso appropriato in cui si trova l'immagine che useremo come icona nella nostra applicazione.
Realizzeremo un programmino che mostra alcune immagini come icone, in questo modo metteremo in pratica quanto visto finora nel tutorial.
Nel codice seguente abbiamo costruito 4 icone con le quali andremo a dimostrare come possiamo chiamare i tipi di immagini già descritti, inoltre vedremo anche come possiamo assegnare l'icona sia ad un JLabel così come un Pulsante J così possiamo usare le immagini con più elementi senza problemi:
 import javax.swing.*; import java.awt.*; public class TestIcons estende JFrame {private ImageIcon OpenIcon = new ImageIcon ("images / open.jpg.webp"); private ImageIcon CloseIcon = new ImageIcon ("images / close.png.webp"); private ImageIcon delete icon = new ImageIcon ("images/delete.png.webp"); private ImageIcon saveIcon = new ImageIcon ("immagini / save.jpg.webp"); public IconTest() {setLayout (nuovo GridLayout (1, 4, 5, 5)); add (nuovo JLabel (OpenIcon)); add (nuovo JButton (icona di chiusura)); add (nuovo JButton (icona elimina)); add (nuova JLabel (icona di salvataggio)); } public static void main (String [] args) {IconTest frame = new IconTest (); frame.setTitle ("IconTest"); frame.setSize (200, 200); frame.setLocationRelativeTo (null); frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); frame.setVisible (vero); }} 

Vediamo che l'implementazione non differisce molto da come costruire un layout normale, l'unica differenza è che invece dei testi inseriamo solo immagini negli elementi, questo alla fine dovrebbe apparire come segue o simile, ovviamente le immagini che sono Usato. Vediamo per finire questo tutorial come sono le icone nel contenitore con la seguente immagine:

INGRANDIRE

wave wave wave wave wave