NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Zobrazení obrázku v Button

V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Vojtěch Bešťák:21.5.2016 20:41

Zdravím, mám jenom takový malý dotaz. Snažím se zobrazit obrázek v buttonu. Hledal jsem různé verze jak to udělat na internetu, vše co jsem nalezl bylo toto:

Image imageOk = new Image(getClass().getResourceAsStream("ok.png"));
Button button3 = new Button("Accept", new ImageView(imageOk));

To co jsem ale nikdy nenašel bylo, kam se má uložit soubor "ok.png"
Poradí mi prosím někdo, kde je to správné umístění pro tento obrázek?

 
Odpovědět
21.5.2016 20:41
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Atrament:21.5.2016 22:40

Správně by to mělo být třeba takto:

ImageIcon imageOk = new ImageIcon(getClass().getClassLoader().getResource("img/ok.png"));

a ten obrázek by přišel do src/img/ok.png

 
Nahoru Odpovědět
21.5.2016 22:40
Avatar
Odpovídá na Atrament
Vojtěch Bešťák:22.5.2016 8:36

Neměl by jsi něco do javafx? Mám pocit, že tohle je ve Swingu.

 
Nahoru Odpovědět
22.5.2016 8:36
Avatar
pocitac770
Tvůrce
Avatar
Odpovídá na Vojtěch Bešťák
pocitac770:22.5.2016 10:45

Ano, je to Swing, ale to s tím umístěním je pořád stejné.

getClass().getResourceAsStream("....");

vrací odkaz na umístění, ve které je ona třída, a k tomu přidá onen parametr. Pokud tam dosadíš pouze název souboru, tak ten soubor musí být ve stejné složce jako třída, pokud to dáš jako "soubor ve složce" (viz příklad Atramenta), tak to bude hledat podsložku v oné složce se třídou. Příklad, jak bys to mohl mít ty...
https://ctrlv.cz/xKJY

Editováno 22.5.2016 10:47
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
22.5.2016 10:45
Avatar
Atrament
Člen IT Redactor Gang
Avatar
Odpovídá na Vojtěch Bešťák
Atrament:22.5.2016 11:32

A jo sorry já furt zapomínám že tady lidi používají JavaFx:)

 
Nahoru Odpovědět
22.5.2016 11:32
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.