Java Bilder einfügen, die sich in einem Ordner befinden?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Das Programm wird in dem Ordner suchen, in dem auch die userinterface.class-Datei liegt. Wenn man einmal davon ausgeht, dass die Klasse im selben Package wie main liegt, kannst du das Bild folgendermaßen holen:

var image = new ImageIcon(getClass().getResource("picture/img.png"));

Generell empfiehlt es sich, eine klare Projektstruktur (jede Klasse liegt in einem benannten Package und beginnt im Namen mit einem Großbuchstaben) mit einem Ressourcenordner anzulegen.

Beispiel (nach typischer Maven-Struktur):

src
- main
  - java
    - com.example
      - Main.java
  - resources
    - images
      - someimage.jpg

Buildtools wie Maven oder Gradle würden den Inhalt eines resources-Ordners übrigens direkt in das Rootverzeichnis packen, in dem auch die class-Dateien abgelegt werden. Das heißt, dein relativer Pfad würde übertragen stets vom resources-Ordner aus starten.

"images/someimage.jpg"

SirNolwen 
Beitragsersteller
 02.02.2024, 19:16

Das hatte mir Chat gpt gerade auch vorgeschlagen xD

Vielen Dank!!

0