ich habe folgendes Problem:
ich habe zwei Klassen erstellt:
Rahmen.java zum Anzeigen der Bilder und ImgPanel.jave, dort wo quasi gezeichnet wird.
Leider werden die Bilder nicht angezeigt, ich will vorerst gar nichts großartiges machen, einzig die Bilder anzeigen. Wo bzw. in welchem Ordner müssen sie liegen? Die Bilder liegen im Ordner img im Verzeichnis komponenten, ein package, wo auch die anderen Klassen liegen.
ich habe zwei Klassen erstellt:
Rahmen.java zum Anzeigen der Bilder und ImgPanel.jave, dort wo quasi gezeichnet wird.
Leider werden die Bilder nicht angezeigt, ich will vorerst gar nichts großartiges machen, einzig die Bilder anzeigen. Wo bzw. in welchem Ordner müssen sie liegen? Die Bilder liegen im Ordner img im Verzeichnis komponenten, ein package, wo auch die anderen Klassen liegen.
Code:
package komponenten;
import javax.swing.*;
import java.awt.*;
/**
* Die Klasse MyPanel erbt von JPanel Eigenschaften und Methoden; dadurch können
* "Komponenten" der Klasse Component gezeichnet werden.
* @version (09.06.2007)
*/
public class ImgPanel extends JPanel
{
private Color[] farben = {Color.white, Color.black, Color.blue,
Color.red, Color.yellow, Color.cyan,
Color.lightGray, Color.magenta, Color.green, Color.darkGray};
private Image bild1;
private Image bild2;
private Image img;
public ImgPanel()
{
//setBackground(farben[6]);
Toolkit kit = Toolkit.getDefaultToolkit();
MediaTracker tracker = new MediaTracker(this);
bild1 = kit.getImage("img/gandhi01.jpg");
bild2 = kit.getImage("img/gandhi01.gif");
// Bilder beim Tracker anmelden
tracker.addImage(bild1, 0);
tracker.addImage(bild2, 1);
System.out.println(tracker.checkID(1));
// Ueberwachen
try{
tracker.waitForAll();
}
catch (InterruptedException exception){
System.err.println("Kann das Bild nicht lesen");
}
}
public void paintComponent (Graphics grafik)
{
super.paintComponent(grafik);
int breite = getWidth();
int hoehe = getHeight();
// Die Bildbreiten bestimmen
int kreuzBreite = bild1.getWidth(this);
int gandhiBreite = bild2.getWidth(this);
int kreuzHoehe = bild1.getHeight(this);
int gandhiHoehe = bild2.getHeight(this);
System.out.println("Gandhi: "+gandhiHoehe);
grafik.drawImage(bild2, 0, 0, this);
grafik.drawImage(bild1, 60, 0, this);
grafik.drawImage(bild1, 120, 0, this);
grafik.drawImage(bild2, 180, 0, this);
}
public void paint(Graphics g){
Image img;
img = getToolkit().getImage("gandhi01.gif");
g.drawImage(img,40,40,this);
}
}