Icon și imageicon - utilizați icoane în java swing, java swing și alte java

Unele componente Java Swing suportă icoane. De exemplu, butoanele, etichetele de text sau elementele de meniu pot avea pictograme. În figură, puteți vedea aspectul aplicației de testare, care are pictograme pentru buton și pentru eticheta de text. Acestea sunt pictogramele Java Swing standard.







În general, există mai multe opțiuni pentru stocarea fișierelor imagine. Prima opțiune - o aplicație pe Java pentru ușurința distribuției poate fi compilată într-o arhivă de jar. Toate imaginile au pus, de asemenea, un fișier de borcan. Această opțiune are un plus de necontestat, aplicația este un fișier. Tot ceea ce este necesar pentru ca aplicația să funcționeze cu succes va fi în acest fișier jar. Pe de altă parte, uneori este util ca desenele și fișierele de resurse să fie disponibile fără manipulare dificilă. În cazul unui fișier jar, sunt disponibile și resurse, dar trebuie să decomprimați (jar este o arhivă zip). apoi schimbați fișierele necesare și apoi le colectați înapoi. Cea de-a doua opțiune este că nu trebuie să conectați întreaga aplicație la fișierul jar, ci să scrieți un anumit fișier bat'nick care va lansa clasa de aplicații principale. Și în sfârșit, al treilea este de a pune desenele într-un director separat, de exemplu imagini, care vor fi în același loc cu arhiva jar a aplicației. Să ne uităm la cazuri diferite.

Să ne uităm la codul cazului de testare. Există o clasă numită TestFrame. În același director ca și TestFrame, există mai multe desene. Este necesar să le încărcați și să le afișați ca pictograme. Acest lucru se face cu ajutorul acestui tip de construcție.

Încă o dată, am nota, atunci când se utilizează această metodă presupune că desenele sunt în același director ca și clasa în sine. Ei bine, căile pentru calea de desen pentru a fi, de exemplu, „images / icon1.png“, și într-un director în care se află TestFrame ar trebui să nahodittsya imagini dosar model icon1.png. Ca atât de picturi au fost localizate în designul meu cu codul de lucru de mai sus.







A doua opțiune este de a aranja desenele ca acestea.

Aplicația este o arhivă text.jar, iar desenele sunt situate în directorul de imagini, care se află în același director ca arhiva. Apoi poți descărca poze pentru pictogramele de genul asta.

Ambele metode de încărcare a imaginii sunt utilizate în aplicația de testare. Pentru primele două pictograme, imaginile sunt preluate din arhiva cererii de jar, iar cea de-a treia, imaginea este preluată din directorul cu imagini. Aspectul cererii de testare este prezentat în figura de mai jos.

Icon și imageicon - utilizați icoane în java swing, java swing și alte java

Codul aplicației de testare.

Calea de caractere = "icon1.png";
Adresa URL imgURL = TestFrame.class.getResource (calea);
Pictograma ImageIcon = noul ImageIcon (imgURL);

- este cross-platform. Faptul că, de exemplu, în Linux, atunci când începe programul de consola nu este directorul curent nu poate fi directorul în care este fișierul jar, și directorul home al utilizatorului curent - System.getProperty ( «user.home»), care nu pot fi și fișiere imagine nici o imagine pe care nu o vei vedea pe buton ...

Vă mulțumim pentru adăugarea. Nu sunt foarte prietenos cu Linux, așa că nu știam astfel de caracteristici. Deci, acest mod de descărcare a fotografiilor va fi cel mai corect.

Da, această opțiune ar trebui să funcționeze corect pe toate platformele.
Dar atunci când executați programul de IDE NetBeans cum ar fi simboluri, de asemenea, nu va fi pe buton, deoarece programul este lansat pentru executarea nu prin fișierul jar :), și apoi compilare / asamblare - te rog ...

Oops, o greșeală, și în IDE Netbeans, totul funcționează corect, verificat :). Dar înainte de asta, de ce am avut asta ...







Trimiteți-le prietenilor: