Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Gdzie musi być plik obrazka wyswietlanego w JFrame?


Rekomendowane odpowiedzi

Opublikowano

To mój pierwszy post na jakimkolwiek forum więc przepraszam jeżeli coś jest nie tak.

Programuje od nie dawna i natrafiłem na moment w
którym chce umieścić obrazek w aplikacji okienkowej w JFrame, Obrazek
się wyświetla tak jak chce jeżeli jest gdzieś na dysku ale co muszę
zrobić jeżeli chce aby obrazek był zapisanych gdzieś w plikach
aplikacji?
mój kod:

public class ObrazekWJLabel extends JFrame{
    JLabel LObrazek;
    public ObrazekWJLabel() {
        
        setTitle("Obrazek w JLabel");
        setVisible(true);
        setSize(200,200);
        LObrazek = new JLabel(new ImageIcon("C:\\zdjecia\\test.png"));
        LObrazek.setBounds(20, 20, 50, 50);
        add(LObrazek);
    }
    public static void main(String args[]){
        ObrazekWJLabel okno = new ObrazekWJLabel();
        okno.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
}
 

 

Ten kod działa ale jak widać plik z obrazkiem znajduje się na dysku "C:\" w folderze "zdjecia"
a
mi zależy na tym żeby obrazek był gdzieś w kodzie aplikacji, dlatego że
gdy komuś wyślę tą aplikacje w ".jar" to żeby nie musiał jeszcze
oddzielnie pobierać obrazka.
Próbowałem na wiele sposobów i nie znalazłem odpowiedzi, w Google też szukałem więc pytam tutaj

Drzewo mojego kodu:

App //Java projekt
- src
- - (default package) //package
- - - ObrazekWJLabel.java / /plik przedstawiony powyżej
- - img //package
- - - test.png //obrazek który chce umieścić w aplikacji

Proszę
o odpowiedź, i proszę żeby nie wysyłać linków do jakichś stron, a jak
już ktoś musi to najlepiej po polsku bo kiepsko u mnie z angielskim

Używam programu Eclipse Juno

POZDRAWIAM KURWA BLEEEH, PATRYK.

Opublikowano

Gdzie chcesz.

1. Tam gdzie uruchamiasz programik obrazki/obrazek.png ( new File(obrazki/obrazek.png).getAbsolute - zwraca pełną ścieżkę )
2. W classpathu Thread.currentThread.getClassloader.getresourceasStream(moj/pakiet/obrazki/obrazek.png);
3. Na www new URL(Dupa);

Opublikowano

Gdzie chcesz.

 

1. Tam gdzie uruchamiasz programik obrazki/obrazek.png ( new File(obrazki/obrazek.png).getAbsolute - zwraca pełną ścieżkę )

2. W classpathu Thread.currentThread.getClassloader.getresourceasStream(moj/pakiet/obrazki/obrazek.png);

3. Na www new URL(Dupa);

Nie zbyt rozumiem co dokładniej mam zrobić. Próbowałem coś z tym co napisałeś ale eclipse zgłasza błąd i nie wiem co mam zrobić, jak byś mógł jakiś skrawek kodu wysłać czy coś z tym. Przypominam że chce aby można było to uruchomić z pliku .jar i żeby ten obrazek też był w tym samym pliku .jar

POZDRAWIAM KURWA BLEEEH, PATRYK.

Opublikowano

povskill kurde gadaj trochę jaśniej :P

lululu

 

Wrzucasz obrazki do folderu z kodem tak jak ja mam tutaj:

 

30mhU.png

 

Aby załadować obrazek np icon.png dajesz :

 

30mvC.png

Opublikowano

lululu

 

Wrzucasz obrazki do folderu z kodem tak jak ja mam tutaj:

 

30mhU.png

 

Aby załadować obrazek np icon.png dajesz :

 

30mvC.png

 

Dzięki wielkie, miałem małe problemy z tym ale dałem rade i wszystko ładnie działa i jeszcze takie pytanie: co jest lepiej zastosować do ImageIO

try/catch czy Throws Declaration?

POZDRAWIAM KURWA BLEEEH, PATRYK.

Opublikowano

Dzięki wielkie, miałem małe problemy z tym ale dałem rade i wszystko ładnie działa i jeszcze takie pytanie: co jest lepiej zastosować do ImageIO

try/catch czy Throws Declaration?

eee to jeden uj czy dasz throwa czy try catch-a.

 

I tak bd musial dac try catcha tam gdzie wywolujesz metode która ma throw.

Opublikowano

eee to jeden uj czy dasz throwa czy try catch-a.

 

I tak bd musial dac try catcha tam gdzie wywolujesz metode która ma throw.

Oki. Dzięki za pomoc. Mam nadzieje że kiedyś ci jakoś się odpłacę za pomoc :)

POZDRAWIAM KURWA BLEEEH, PATRYK.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...