Hallo,
Ich habe ein Projekt für die Uni und ich sollte ( u.a.) eine Image in Frame laden. Wenn ich die Image durch image = getToolkit().getImage("MyImage.gif"); laden will passiert gar nichts, aber wenn ich die Image explizit durch ein FileChooser Dialog auswähle, wird die Image geladen. Die ImageDatei ist aber in demselben Verzeichnis wie meine Klasse, wieso wird die nicht gefunden. In nachfolgender Listing sind beide Varianten vorhanden, einmal die direkte Aufladung, einmal durch Dialog
Please help!
[/list]
Ich habe ein Projekt für die Uni und ich sollte ( u.a.) eine Image in Frame laden. Wenn ich die Image durch image = getToolkit().getImage("MyImage.gif"); laden will passiert gar nichts, aber wenn ich die Image explizit durch ein FileChooser Dialog auswähle, wird die Image geladen. Die ImageDatei ist aber in demselben Verzeichnis wie meine Klasse, wieso wird die nicht gefunden. In nachfolgender Listing sind beide Varianten vorhanden, einmal die direkte Aufladung, einmal durch Dialog
Please help!
Code:
import java.io.*;
import java.util.*;
import javax.swing.*;
import java.awt.print.*;
import java.awt.event.*;
import java.awt.*;
import java.io.*;
import java.net.*;
public class Test extends Canvas{
private Image image;
public Test( )
{
//image=Toolkit.getDefaultToolkit().getImage(oeffnen());
image = getToolkit().getImage("Bahn1.gif");
MediaTracker mediaTracker = new MediaTracker(this);
mediaTracker.addImage(image, 0);
try
{
mediaTracker.waitForID(0);
}
catch (InterruptedException ie)
{
System.err.println(ie);
System.exit(1);
}
}
public String oeffnen()
{
File BildDatei;
//String Zeile;
//BufferedReader in;
//StringBuffer TextDatei;
JFileChooser jfcFileChooser = new JFileChooser();
jfcFileChooser.setDialogTitle("Datei Öffnen");
jfcFileChooser.setFileFilter(new FileFilterBild());
jfcFileChooser.setCurrentDirectory(new File("D:/Claudia"));
jfcFileChooser.showOpenDialog(this);
BildDatei = jfcFileChooser.getSelectedFile();
return BildDatei.toString();
}
public void paint(Graphics g)
{
g.drawImage(image,0,0, this);
}
public static void main(String[] args) {
Canvas c=new Test();
JFrame f = new JFrame("Test Image");
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}
});
f.setBackground(Color.WHITE);
f.setBounds(0,0,300,800);
f.add("Center",c);
f.pack();
f.setVisible(true);
}
}