Java Swing i ustawienie ikonki

0

Chcialbym dodac ikone do okna stworzonego w swingu. Robie to w nastepujacy sposob, jednak ikonka nie pojawia sie. Nie ma tez zadnych bledow.

Image img = new ImageIcon("fox(2).png").getImage();
            frame.setIconImage(img);
0

Bląd jest pewnie w pozostałych 90% kodu którego nie pokazałeś.

0

A gdzie jest zlokalizowana ta ikonka? Bo ja ustawiam ze odpalasz to z katalogu gdzie jej nie ma, więc taka ścieżka względna jej nie znajduje...

0

ok dolaczam caly kod. Problem nie tkwi raczej w sciezce. Nawet jesli podam sciezke bezwzgledna i tak nie dziala.

import javax.swing.*;
import java.awt.*;

public class Main {

    public static void main(String[] args) {
        EventQueue.invokeLater(() ->
        {
            var frame = new MyFrame("Moja ramka");
            Image img = new ImageIcon("fox(2).png").getImage();
            frame.setIconImage(img);

            frame.setVisible(true);

        });

    }
}

class MyFrame extends JFrame
{


    Toolkit kit = Toolkit.getDefaultToolkit();
    Dimension screenSize = kit.getScreenSize();
    int screenWidth = screenSize.width;
    int screenHeight = screenSize.height;

    //rozmiar okna
    int a = 600; //W
    int b = 600; //H


    public MyFrame(String title)
    {
        setSize(a,b);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocation(screenWidth/2-a/2, screenHeight/2-b/2);

        setTitle(title);}}

1

Problem jest w ścieżce, skopiowałem cały ten kod, wrzuciłem ścieżke typu C:/photo.png i działa.
Żeby to działało z taką ściężką jak masz, to zdjęcie musi być w takim miejscu, wtedy możesz sobie pisać new ImageIcon("fox(2).png")
screenshot-20210104212244.png

0

Dziekuje za wszystkie rady. Emdszej93 mam plik z ikona w tym miejscu, ktore wskazales. Probowalem tez dodac sciezke bezwzgledna, tj. /home/djcebul/IdeaProjects/N/fox.png i tez to nie dziala. Moze przyczyna jest to ze odpalam to w InteliJ na linuksie... Sproboje pozniej jeszcze w windows.

Natomiast tego zapisu

System.getProperty("user.dir").contact("/ścieżka/do/pliku/relatywna/do/src/")

nie do konca rozumiem. Nigdzie nie znalazlem informacji na temat zapisu .contact a InteliJ w tym miejscu wyrzuca blad. Moglbym prosic o wyjasnienie cytowanego fragmentu?

0

Nie do konca rozumiem co Ty robisz, ale to chyba ma być concat a nie contact?

1 użytkowników online, w tym zalogowanych: 0, gości: 1