• Wir präsentieren Dir heute ein Stellenangebot für einen Frontend-Entwickler Angular / Java in Braunschweig. Hier geht es zur Jobanzeige

Bilder in javafx Project

J

Joreyk

Aktives Mitglied
Hallo,
Vor längerem hatte ich folgendes gemacht:
Bild in den Workspace von einem javafx programm rein kopieren
Bild wurde von Eclipse gefunden
Javafx hat das Bild gefunden mit dem relativen pfad wo man nur noch den Datei Namen angegeben hat

Es geht darum dass das Bild nicht mehr auf C:\\... liegt sondern im Ordner des Projektes somit es bei jedem User gleichermaßen gefunden wird
weil der relative Pfad verwendet wird

Wie hat man das gemacht ? ich habe es vergessen :D
 
J

Joreyk

Aktives Mitglied
Hier ist ein Tutorial dazu https://javabeginners.de/Frameworks/JavaFX/Nodes/Bild_darstellen_in_ImageView.php

Wenn das Bild im Classpath ist dann kannst du es doch wie folgt machen

Java:
 Image image = new Image("img/wien.jpg");
ImageView imageV = new ImageView(new Image(getClass().getResourceAsStream("Unbenannt.png")));
this.getChildren().add(imageV);
wie kann ich es sonst noch einfügen mit einem relativen pfad. im moment gehts nur in bin/application/

ImageView imageV = new ImageView(new Image(getClass().getResource("Unbenannt.png").toExternalForm()));
this.getChildren().add(imageV);

das funktioniert auch aber wieder nur in bin/application/
 
kneitzel

kneitzel

Top Contributor
Also dieses "bin/application" sagen mir absolut nichts. Ist das der Ordner in das Deine IDE die übersetzen .class Dateien packt sowie alles Ressourcen?

Dann ist das doch der Hauptordner von Deinem Projekt nach dem übersetzen und genau da gehört auch alles rein (bzw. dann in die jar Datei so man es packt und so ...).

Wenn Du Bilder von außerhalb dieses Pfades nutzen willst, dann geht das auch - da musst Du nur mit der entsprechend URL drauf zugreifen, also so ein file://....
Image hat aber auch Konstruktoren, die (u.a.) einen InputStream nehmen. Also alles, das Du irgendwie als Stream öffnen kannst, kannst Du da dann verwenden.
 
J

Joreyk

Aktives Mitglied
Es wurde gelöst
Eclipse hat in der Ausführung den Pfad main/bin/ als möglichkeit um daten zu speichern und relative pfade anzugeben ansonsten müssen direkte angegeben werden
 
kneitzel

kneitzel

Top Contributor
Du meinst also bin/main was der "output" Folder ist. Und das ist dann der root vom CLASSPATH deiner Applikation. In der IDE ist das dieser Ordner aber je nachdem, was Du wie machst, ist die Applikation ja ggf. in einem JAR oder so ...

Und wenn Du schreibst:
das funktioniert auch aber wieder nur in bin/application/
dann bedeutet das hoffentlich nicht, dass Du die Bilder da selbst rein kopierst. Diese Resourcen gehören unter src/main und Eclipse kopiert die dann. Oder Du machst einen neuen Ordner und markierst diesen als zusätzlichen Source Ordner. Das Problem kann sonst sein, dass diese bin Ordner bei einem clean oder so komplett gelöscht wird.
(Bei Maven und Gradle ist es üblich, Java Sourcen von den Ressourcen zu trennen. Da gibt es dann src/main/java und src/main/resources. Das aber nur ganz am Rande.)
 
L

lam_tr

Top Contributor
Also dieses "bin/application" sagen mir absolut nichts. Ist das der Ordner in das Deine IDE die übersetzen .class Dateien packt sowie alles Ressourcen?

Dann ist das doch der Hauptordner von Deinem Projekt nach dem übersetzen und genau da gehört auch alles rein (bzw. dann in die jar Datei so man es packt und so ...).

Wenn Du Bilder von außerhalb dieses Pfades nutzen willst, dann geht das auch - da musst Du nur mit der entsprechend URL drauf zugreifen, also so ein file://....
Image hat aber auch Konstruktoren, die (u.a.) einen InputStream nehmen. Also alles, das Du irgendwie als Stream öffnen kannst, kannst Du da dann verwenden.
Also bin/application verstehe ich auch nicht.

Es sei dem application ist ein package, dann sucht die anwendung in application Verzeichnis?
 
kneitzel

kneitzel

Top Contributor
Also bin/application verstehe ich auch nicht.

Es sei dem application ist ein package, dann sucht die anwendung in application Verzeichnis?
Ja, das ist ein guter Gedanke. Mich wundert dieses bin/main auch, denn legt Eclipse nicht alles einfach in bin?

Aber wenn application sein Package ist, in dem die Klasse mit dem Code gegebenen Code war, dann macht das Sinn. Denn da war ja getClass().getResourceAsStream("Unbenannt.png") als Code genannt und das ist relativ zum aktuellen package.
(Im Gegensatz zu dem new Image(String) - das nimmt immer den root vom Classpath ähnlich wie das getResourceAsStream vom Classloader.)
 
J

Joreyk

Aktives Mitglied
folderstructure.PNG

Dies ist die Ordnerstruktur von eclipse

es muss nach vielem auspropbieren so aussehen:

in diesem ordner das css file

in /bin/application sind die .class dateien also die kompilierten
in /src/application sind die .java dateien
ein bild muss in /bin/ eingefügt werden um mit einem relativen pfad gefunden zu werden

Vielen Dank für die Kommentare und die Hilfe
 
kneitzel

kneitzel

Top Contributor
Erst einmal danke für die Erläuterung.

Probiere bitte einmal aus, ob Du die Bilder nicht auch in das src Verzeichnis legen kannst.
Wenn Du dann übersetzt sollte Eclipse die Bilder in das bin Verzeichnis kopieren.

Das bin Verzeichnis ist eine Art Ausgabeverzeichnis. Das wird auch gerne einmal gelöscht. Und diverse Tools beachten es oft nicht, z.b. bei einer Versionsverwaltung wird dieses Verzeichnis dann in der Regel ignoriert.
 
J

Joreyk

Aktives Mitglied
Erst einmal danke für die Erläuterung.

Probiere bitte einmal aus, ob Du die Bilder nicht auch in das src Verzeichnis legen kannst.
Wenn Du dann übersetzt sollte Eclipse die Bilder in das bin Verzeichnis kopieren.

Das bin Verzeichnis ist eine Art Ausgabeverzeichnis. Das wird auch gerne einmal gelöscht. Und diverse Tools beachten es oft nicht, z.b. bei einer Versionsverwaltung wird dieses Verzeichnis dann in der Regel ignoriert.
dankeschön für deine Antwort

Das Programm das ich habe wird so funktionieren dass nur ich dieses program habe, dieses erstellt die GUI und speichert es dann in ein OBJECT
Der Launcher den die User dann besitzen laden dann diesees Objekt vom Server -> Versions kontrolle sollte deshalb kein Problem sein

ich hab es probiert
in jedem Ordner nur 1 mal das jpg zu haben und nur in dem /bin/ ordner wird es gefunden mit dem relativen Pfad
ImageView imageV = new ImageView(new Image("mainMenueWallPaper.jpg"));


Das gute ist bei Kompilierungen werden nur die Daten in /bin/application/ überschrieben


# HÄTTE ERWÄHNEN SOLLEN #
application ist das package wo das program drin liegt



kann es sein dass ich es falsch lade?

Es ist SEHR wichtig dass es ein relativer Pfad ist und kein C:\\.... da ich dieses Programm auf linux und Windows ausführen/bearbeiten möchte



Angehängt sind die Ordner Struktur von bin
 

Anhänge

  • binapplication.PNG
    binapplication.PNG
    6,8 KB · Aufrufe: 2
  • binonly.PNG
    binonly.PNG
    10,9 KB · Aufrufe: 2
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
Xbody 2D-Grafik JavaFX Bilder transformieren AWT, Swing, JavaFX & SWT 2
N Bilder auf Button einfügen und mehrmals ändern (ein Button, mehrere ActionListener) AWT, Swing, JavaFX & SWT 2
N eclipse Java, bilder benutzten Funktioniert nicht AWT, Swing, JavaFX & SWT 6
Kirby.exe Bilder in GUI einfügen AWT, Swing, JavaFX & SWT 8
T Bilder bei einem JFrame einfügen AWT, Swing, JavaFX & SWT 4
K JLabel mit Bilder im nicht initialisierten JPanel hinzufügen AWT, Swing, JavaFX & SWT 5
L Bilder werden in exportierter Datei nicht geladen AWT, Swing, JavaFX & SWT 6
C Bilder so einbinden, dass sie sich ändern AWT, Swing, JavaFX & SWT 6
J Bilder aus dem SceneBuilder werden in der Jar nicht dargestellt AWT, Swing, JavaFX & SWT 4
TheWhiteShadow JavaFX Bilder werden ungewollt Skaliert AWT, Swing, JavaFX & SWT 1
B JavaFX Bilder in einem Gewissen bereich halten AWT, Swing, JavaFX & SWT 1
J Bilder proportional verkleiner AWT, Swing, JavaFX & SWT 12
E Bilder skalieren AWT, Swing, JavaFX & SWT 4
DaCrazyJavaExpert Swing Bilder überlagern AWT, Swing, JavaFX & SWT 19
A Bilder als Hintergrund AWT, Swing, JavaFX & SWT 2
@SupressWarnings() JavaFX Bilder in executable jar laden AWT, Swing, JavaFX & SWT 5
Sugan JavaFX Bilder drucken AWT, Swing, JavaFX & SWT 0
K JPanel Bilder bei Windows nicht darstellbar AWT, Swing, JavaFX & SWT 6
Sugan Java FX Verzeichnisüberwachung -> Bilder auf GUI anzeigen AWT, Swing, JavaFX & SWT 4
E AWT Bilder als "Array" abspeichern. AWT, Swing, JavaFX & SWT 4
MrSnake Bilder aus Unterordner einfügen AWT, Swing, JavaFX & SWT 2
I 2D-Grafik Bilder Eingefügt, button jetzt im Hintergrund AWT, Swing, JavaFX & SWT 2
C SWT Treeview mit Bilder im Label verändert Expanded Icon AWT, Swing, JavaFX & SWT 1
M Swing JTextPane, Bilder und Text-flow AWT, Swing, JavaFX & SWT 2
A Mit dem Scene Builder eine Collage erstellen (Bilder beziehen aus Flickr) AWT, Swing, JavaFX & SWT 1
thet1983 JTable Bilder AWT, Swing, JavaFX & SWT 6
GenerationLost Bilder an bestimmten Platz einfügen/Objekte visualisieren AWT, Swing, JavaFX & SWT 1
F Bilder in jFrame einfügen AWT, Swing, JavaFX & SWT 3
J Bilder als Variable an einem Objekt speichern AWT, Swing, JavaFX & SWT 3
I Swing Bilder werden nach Export nicht angezeigt AWT, Swing, JavaFX & SWT 1
D 2D-Grafik Bilder anzeigen AWT, Swing, JavaFX & SWT 4
J Bilder auf JPanel (im JScrollPane) nacheinander laden AWT, Swing, JavaFX & SWT 0
vodkaz JFrame,Bilder und Zeitverzögerung AWT, Swing, JavaFX & SWT 2
A Swing Bilder werden nicht angezeigt AWT, Swing, JavaFX & SWT 3
I SWT Bilder, bzw. ein einzelnes Bild AWT, Swing, JavaFX & SWT 6
M Bilder zeichnen, NullPointer Exception AWT, Swing, JavaFX & SWT 3
C 2D-Grafik Steganographie - Verschlüsselung von Dateien in Bildern - Bilder zeigen schwarze Rechtecke AWT, Swing, JavaFX & SWT 13
P Durch Bilder Scrollen AWT, Swing, JavaFX & SWT 2
F Bilder werden nicht in's Array geladen AWT, Swing, JavaFX & SWT 4
K Bilder übereinanderlegen AWT, Swing, JavaFX & SWT 11
windl Querstreifen beim Bilder malen und anpassen an neue CPU AWT, Swing, JavaFX & SWT 12
V Fertige Komponente zum Anzeigen mehrerer Bilder AWT, Swing, JavaFX & SWT 5
Karuka 2D-Grafik Bilder in GridLayout einfügen AWT, Swing, JavaFX & SWT 7
J Bilder in ausführbare jar einbinden AWT, Swing, JavaFX & SWT 7
J Swing Bilder anzeigen in Gridlayout AWT, Swing, JavaFX & SWT 11
H 2D-Grafik Bilder laden ist nicht zuverlässig AWT, Swing, JavaFX & SWT 3
F Bilder ineinander kopieren AWT, Swing, JavaFX & SWT 3
P Bilder verkleinern AWT, Swing, JavaFX & SWT 2
C SWT Mehrere Bilder in GUI laden AWT, Swing, JavaFX & SWT 5
Furtano AWT Skalierung mehrerer Bilder / Histogramme im Fenster AWT, Swing, JavaFX & SWT 4
Furtano AWT mehrere Bilder in einen Frame zeichnen + Layout Manager AWT, Swing, JavaFX & SWT 10
T 2D-Grafik Statisches Hintergrundbild, dynamische Bilder drüber AWT, Swing, JavaFX & SWT 2
C Zwei Bilder übereinander legen AWT, Swing, JavaFX & SWT 1
L [SWT] Daten und Bilder drucken AWT, Swing, JavaFX & SWT 2
S Flickr Bilder in Gui Oberfläche AWT, Swing, JavaFX & SWT 21
L Bilder im JPanel als Hintergrund - Swing AWT, Swing, JavaFX & SWT 2
K Bilder nacheinander einfügen AWT, Swing, JavaFX & SWT 3
H Bilder auf Buttons per Klick tauschen ( Puzzle ) AWT, Swing, JavaFX & SWT 8
H Bilder in Array zufällig anordnen AWT, Swing, JavaFX & SWT 4
P 2D-Grafik Viele Bilder zu einem Video AWT, Swing, JavaFX & SWT 3
J Vergleicher zweier Bilder AWT, Swing, JavaFX & SWT 2
C zwei Bilder nacheinander anzeigen AWT, Swing, JavaFX & SWT 2
L Swing Bilder über andere Bilder laden AWT, Swing, JavaFX & SWT 3
J Bilder überlappen AWT, Swing, JavaFX & SWT 18
P Bilder werden nach Änderung nicht angezeigt AWT, Swing, JavaFX & SWT 15
3 2D-Grafik Rechtecke auf Bilder legen und auslesen AWT, Swing, JavaFX & SWT 4
M Mehrere Bilder auf einmal anzeigen AWT, Swing, JavaFX & SWT 9
P Swing html mit bilder drin AWT, Swing, JavaFX & SWT 12
F Nicht alle Bilder werden angezeigt AWT, Swing, JavaFX & SWT 2
E Bilder auf JFrame AWT, Swing, JavaFX & SWT 7
R Bilder über URL einfügen AWT, Swing, JavaFX & SWT 4
F Applet zeigt Bilder nicht an AWT, Swing, JavaFX & SWT 5
M FileChooser Bilder auswählen AWT, Swing, JavaFX & SWT 8
G Swing Bilder zeichnen AWT, Swing, JavaFX & SWT 28
L Swing Bilder im Icons-Ordner AWT, Swing, JavaFX & SWT 4
U Bilder in Jar werden nicht gefunden AWT, Swing, JavaFX & SWT 5
S SWT Canvas: Flackernde Bilder AWT, Swing, JavaFX & SWT 3
A Bilder vergleichen AWT, Swing, JavaFX & SWT 4
E Swing JTextPane Inhalt(Text und Bilder) als HTML text bekommen AWT, Swing, JavaFX & SWT 3
E AWT Bilder und Java AWT, Swing, JavaFX & SWT 11
P Bilder einfügen AWT, Swing, JavaFX & SWT 4
D Swing JEditorPane mit HTML aber ohne Bilder AWT, Swing, JavaFX & SWT 3
S Swing Kleine Bilder in Panel einfügen AWT, Swing, JavaFX & SWT 13
A AWT Bilder als Link verwenden? AWT, Swing, JavaFX & SWT 11
T SWT Wie Bilder aus JAR-Dateien einbinden? AWT, Swing, JavaFX & SWT 12
S Bilder aus der Google Book Search API auslesen AWT, Swing, JavaFX & SWT 3
J Bilder in JScrollPane zentrieren AWT, Swing, JavaFX & SWT 5
M Bilder in einem Textfeld darstellen AWT, Swing, JavaFX & SWT 2
N Bilder aus Infos generieren lassen. Welches Framework? AWT, Swing, JavaFX & SWT 8
A SWT Bilder resizen AWT, Swing, JavaFX & SWT 9
A Swing Bilder in JFrame einfügen AWT, Swing, JavaFX & SWT 2
Cloud Einige Bilder werden nicht geladen AWT, Swing, JavaFX & SWT 11
A Java Print: Bilder werden zu groß ausgedruckt AWT, Swing, JavaFX & SWT 6
R JPanel - BufferedImage - zeichnen großer Bilder AWT, Swing, JavaFX & SWT 2
B Wie kann ich Greyscale Bilder aus ushort binary files erzeugen? AWT, Swing, JavaFX & SWT 8
D gezeichnete bilder verblassen AWT, Swing, JavaFX & SWT 10
A Bilder skaliert zeichnen AWT, Swing, JavaFX & SWT 13
M JEditorPane lädt HTML ohne Bilder AWT, Swing, JavaFX & SWT 2
M JEditorPane lädt HTML ohne Bilder AWT, Swing, JavaFX & SWT 2
B Einfache jpg-Bilder anzeigen AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Anzeige

Neue Themen


Oben