Anzeige ein ImageIcon
Ich bin versucht, ein Bild anzuzeigen, das auf einem JPanel
. Ich bin mit einem ImageIcon
für die Darstellung des Bildes, und das Bild ist im selben Verzeichnis wie die class-Datei. Allerdings wird das Bild nicht angezeigt werden, gibt es keine Fehler auftreten. Könnte jemand bitte helfen herauszufinden, was ist Los mit meinem code...
package ev;
import java.awt.Graphics;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
public class Image extends JPanel {
ImageIcon image = new ImageIcon("peanut.jpg");
int x = 10;
int y = 10;
public void paintComponent(Graphics g) {
super.paintComponent(g);
image.paintIcon(this, g, x, y);
}
}
InformationsquelleAutor user1058860 | 2012-04-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie verwenden
InformationsquelleAutor Yegoshin Maxim
Dies ist eine Allgemeine Verwirrung unter den Programmierern. Die
getClass().getResource(path)
lädt die Ressourcen aus dem Klassenpfad.ImageIcon image = new ImageIcon("peanut.jpg");
Wenn wir nur den Namen der image-Datei dann mit Java
sucht es im aktuellen Arbeitsverzeichnis.
Wenn du mit NetBeans, die CWD ist das Projekt-Verzeichnis. Sie
können Sie herausfinden, die CWD zur Laufzeit mit dem folgenden Aufruf:
System.out.println(new File("").getAbsolutePath());
Der folgende code ist ein Codebeispiel, wo Sie können, testen Sie diese für sich selbst.
Das folgende Bild zeigt, wo die book.jpg
Bild in NetBeans, wenn wir nur den Namen des Bildes
der
ImageIcon
Konstruktor.Haben wir das gleiche Programm von der Kommandozeile aus. Wir sind innerhalb der ImageIconExample
- Verzeichnis.
Das Programm ausführen, mit dem folgenden Befehl:
$ ~/bin/jdk1.7.0_45/bin/java com.zetcode.ImageIconExample
Können Sie mehr erfahren in meinem Die Anzeige von Bilddaten in Java tutorial.
InformationsquelleAutor Jan Bodnar