ImageIcon Problem

Status
Nicht offen für weitere Antworten.
P

Peter55k

Gast
Kurz eine Frage, ich hab ein kleines Programm geschrieben, es geht nur um das ImageIcon. In der Schule wird das Icon angezeigt, bei mir zu hause aber leider nicht, obwohl das der gleiche quellcode ist, wieso nicht? Hab ich was falsch gemacht und das object wird vllt nicht von jeder JVM gleich interpretiert oder so?

geht nur um die das imageicon, bitte ein mal gucken

:/

Code:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class Spiel_brett_2 extends JFrame{
	
	ImageIcon bild = new ImageIcon("punkt.png");
	ImageIcon nix = new ImageIcon();
	
	int zaehler = 0;
	
	boolean A1_WERT = false;
	boolean A2_WERT = false;
	boolean A3_WERT = false;
	boolean A4_WERT = false;
	
	Object a = new Object();
	Object b = new Object();
		
	Weisser_Panel A1 = new Weisser_Panel();
	Schwarzer_Panel A2 = new Schwarzer_Panel();
	Schwarzer_Panel A3 = new Schwarzer_Panel();
	Weisser_Panel A4 = new Weisser_Panel();	
	
	public void Button_A1() 
	{
		
		if(A1_WERT == true) 
		{
			System.out.println("A1");
			
			if(zaehler == 0)
			{
				a = A1.b.getIcon();	
				A1.b.setIcon(nix);
			}
			
			if(zaehler == 1)
			{
				A1.b.setIcon((Icon) a);
			}
				
			zaehler++;
			
			if (zaehler == 2)
			{
				zaehler = 0;
			}
		}
		
		if(A2_WERT == true) 
		{
			System.out.println("A2");
			
			if(zaehler == 0)
			{
				a = A2.b.getIcon();	
				A2.b.setIcon(nix);
			}
			
			if(zaehler == 1)
			{
				A2.b.setIcon((Icon) a);
			}
				
			zaehler++;
			
			if (zaehler == 2)
			{
				zaehler = 0;
			}
		}
		
		if(A3_WERT == true)
		{
			if(zaehler == 0)
			{
				a = A3.b.getIcon();	
				A3.b.setIcon(nix);
			}
			
			if(zaehler == 1)
			{
				A3.b.setIcon((Icon) a);
			}
				
			zaehler++;
			
			if (zaehler == 2)
			{
				zaehler = 0;
			}
			
			System.out.println("A3");	
		}
		
		if(A4_WERT == true)
		{
			if(zaehler == 0)
			{
				a = A4.b.getIcon();	
				A4.b.setIcon(nix);
			}
			
			if(zaehler == 1)
			{
				A4.b.setIcon((Icon) a);
			}
				
			zaehler++;
			
			if (zaehler == 2)
			{
				zaehler = 0;
			}
			System.out.println("A4");
			
		}
	}
	
	public Spiel_brett_2()
	{
		Container cp = getContentPane();
		cp.setLayout(new GridLayout(2,2));
		
		A1.b.setIcon(bild);
		cp.add(A1); 	cp.add(A2);		cp.add(A3);		cp.add(A4);
		
		A1.b.addActionListener(new ActionListener() 
		{
			public void actionPerformed(ActionEvent ae)
			{
				A1_WERT = true;
				Button_A1();
				A1_WERT = false;
			}
		});	
		
		A2.b.addActionListener(new ActionListener() 
		{
			public void actionPerformed(ActionEvent ae)
			{
				A2_WERT = true;
				Button_A1();
				A2_WERT = false;
			}
		});	
		
		A3.b.addActionListener(new ActionListener() 
		{
			public void actionPerformed(ActionEvent ae)
			{
				A3_WERT = true;
				Button_A1();
				A3_WERT = false;
			}
		});	
		
		A4.b.addActionListener(new ActionListener() 
		{
			public void actionPerformed(ActionEvent ae)
			{
				A4_WERT = true;
				Button_A1();
				A4_WERT = false;
			}
		});	
		
		this.setSize(172,168);
		this.setTitle("Schach 5000");
		this.setResizable(false);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
	}	
}

class Weisser_Panel extends JPanel 
{	
	JButton b = new JButton();
	public Weisser_Panel()
	{
		setLayout(null);
		b.setBounds(0,0, 86, 84);
		b.setBackground(Color.WHITE);
		add(b);
	}
}

class Schwarzer_Panel extends JPanel 
{
	JButton b = new JButton();
	public Schwarzer_Panel()
	{
		setLayout(null);
		b.setBounds(0,0, 86, 84);
		b.setBackground(Color.black);
		add(b);
	}
}
 
S

SlaterB

Gast
punkt.png muss sich im Dateisystem dort befinden wo die .class-Datei ist oder je nach Konfiguration woanders

Betriebssystem, Umgebungsvariablen, Entwicklungsumgebung, Verzeichnisstruktur, Screenshots von Explorer usw?

günstig wäre übrigens erstmal ein 10 Zeilen-Programm, um die Existenz der Bilddatei zu prüfen
 
S

SlaterB

Gast
ich sehe dort keine .class-Datei, wäre auch bisschen seltsam für ein 'src'-Verzeichnis,
gibts da nicht noch ein 'bin'-Verzeichnis?

wie und von wo startest du das Programm denn? oder benutzt du Eclipse? wie siehts da aus?
 
P

Peter55k

Gast
Okey, ich hab nur der übersichthalber mal eben ein kleines Testprogramm gemacht.

Hier der Code:

Code:
import java.awt.*;
import javax.swing.*;

public class test_2 extends JFrame{
	
	ImageIcon bild = new ImageIcon("punkt.png");
	JButton b1 = new JButton(bild);
	
	public test_2()
	{
		getContentPane().setLayout(new FlowLayout());
		getContentPane().add(b1);
		
		this.setSize(172,168);
		this.setTitle("Schach 5000");
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setVisible(true);
	}
	
	public static void main(String[] args) {
		test_2 brett = new test_2();
	}
}

Das Fenster mit Button wirds angezeigt, nur auf dem button ist das bild nicht :/
Grafik befindert sich src ordner bei der .java datei.
die .class datei ist im bin ordner.
 
S

SlaterB

Gast
und genau da in den bin-Ordner muss die Grafik hin ;)
(mit vielen Konfigurationen könnte das andere auch gehen, aber muss nicht sein, Grafik in den bin-Ordner ist schon ziemlich gut)
 
G

Guest

Gast
Hab die grafik jetzt in beiden ordnern und es geht nicht.
Hab eclipse auch neu gestartet.
 
S

SlaterB

Gast
letzte Hoffnung ist noch rechte Maustaste auf das Projekt in Eclipse und Refresh,
das Bild sollte im Projekt-Explorer zu sehen sein,
Eclipse würde dann übrigens auch automatisch Bilder von src nach bin kopieren, falls dort nicht vorhanden
 
P

Peter55k

Gast
Also das Bild selbst ist nicht im projekt-explorer so sehen. Nur halt das objekt :/

Refresh nützt auch nix.
 

Der Müde Joe

Top Contributor
kannst ja mal das ausprobieren:
Code:
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Test {

	public Test() {
		init();
	}

	private void init() {
		JFrame frame = new JFrame();
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		File file = new File("bild.png");
		System.out.println(file.getAbsolutePath()); //wo ist das bild
		System.out.println(file.exists()); // existiert die datei??

		BufferedImage image;
		try {
			image = ImageIO.read(file);
		} catch (IOException e) {
			e.printStackTrace();
			return;
		}
		JPanel panel = new ImagePanel(image);
		frame.setContentPane(panel);

		frame.setSize(image.getWidth(), image.getHeight());
		frame.setVisible(true);

	}

	public static void main(String[] args) {
		new Test();
	}

	private static class ImagePanel extends JPanel {

		private BufferedImage image;

		ImagePanel(BufferedImage image) {
			this.image = image;
		}

		@Override
		public void paintComponent(Graphics g) {
			super.paintComponent(g);
			g.drawImage(image, 0, 0, null);
		}
	}
}

EDIT:
>Eclipse würde dann übrigens auch automatisch Bilder von src nach bin kopieren, falls dort nicht vorhanden

Nur ist der Startort nicht der bin, sondern das Verzeichnis, in dem src bzw bin sind ;-)
 
G

Guest

Gast
Hab ich mal gemacht.

Console gibt folgendes aus:

Code:
C:\Documents and Settings\Administrator\workspace\test\punkt.png
false
javax.imageio.IIOException: Can't read input file!
	at javax.imageio.ImageIO.read(Unknown Source)
	at Test.init(Test.java:26)
	at Test.<init>(Test.java:13)
	at Test.main(Test.java:40)
 

Der Müde Joe

Top Contributor
>> System.out.println(file.getAbsolutePath()); //wo ist das bild

->C:\Documents and Settings\Administrator\workspace\test\punkt.png

>> System.out.println(file.exists()); // existiert die datei??

->false

Das Bild ist nicht dort!
 
S

SlaterB

Gast
> Nur ist der Startort nicht der bin, sondern das Verzeichnis, in dem src bzw bin sind

es wird zwar von src nach bin kopiert aber du hast Recht wie ich auch gerade getestet habe,
das Bild sollte in das Verzeichnis über src + evtl. Refresh in Eclipse
 
G

Gast

Gast
Wo ist das Bild?
->C:\Documents and Settings\Administrator\workspace\test\punkt.png

Wenn das der Pfad ist, wie kann das bild dann nicht da sein? ^^
 
G

Guest

Gast
Oh man. Hab die Datei jetzt mal in den Übergeordneten ordner kopiert. Also in den projektordner selbst nicht in bin odr src ... also in

C:\Documents and Settings\Administrator\workspace\test

jetzt geht es :/


finds nur bissl komisch das es im rechenzentrum auch vorher ging :/ und hier nicht

danke jungs :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Problem bei ImageIcon aktualisieren Java Basics - Anfänger-Themen 5
P ImageIcon zusammen mit Fenstergrösse skalieren Java Basics - Anfänger-Themen 3
G ImageIcon in Byte-Array ablegen Java Basics - Anfänger-Themen 7
O ImageIcon, Swing Java Basics - Anfänger-Themen 1
F Interface ImageIcon wird nicht angezeigt Java Basics - Anfänger-Themen 4
R Java ImageIcon drehen Java Basics - Anfänger-Themen 6
P ImageIcon in JAR Java Basics - Anfänger-Themen 5
T Compiler-Fehler Mit Array und "for" mehrere ImageIcon erstellen Java Basics - Anfänger-Themen 7
S GUI ImageIcon Mouselistener Link Java Basics - Anfänger-Themen 0
E Bild vom FileChooser aus via ImageIcon in DB schreiben Java Basics - Anfänger-Themen 16
R JLabel imageicon jede Sekunde wechseln Java Basics - Anfänger-Themen 3
K ImageIcon laden Java Basics - Anfänger-Themen 6
S Button durch ImageIcon ersetzen Java Basics - Anfänger-Themen 9
P byte Array aus ImageIcon Java Basics - Anfänger-Themen 10
D JButton oder ImageIcon klickt "langsam" Java Basics - Anfänger-Themen 5
R ImageIcon wird nich angezeigt - Jar, Eclipse Java Basics - Anfänger-Themen 6
P ImageIcon/Pfad Java Basics - Anfänger-Themen 3
C ImageIcon erweitern Java Basics - Anfänger-Themen 6
H ImageIcon rotieren Java Basics - Anfänger-Themen 4
w0ddes ImageIcon in Objektarray (TableModel) einfügen. Java Basics - Anfänger-Themen 7
T ImageIcon ohne Classloader Java Basics - Anfänger-Themen 12
S ImageIcon Array Java Basics - Anfänger-Themen 8
Developer_X eigenes ImageIcon schreiben Java Basics - Anfänger-Themen 11
B Aus JTable ImageIcon abfragen Java Basics - Anfänger-Themen 8
G ImageIcon Java Basics - Anfänger-Themen 4
D ImageIcon in Label Java Basics - Anfänger-Themen 7
J ImageIcon im JLabel automatisch resizen. Java Basics - Anfänger-Themen 6
G JLabel nachträglich verändern, bzw. ImageIcon ändern? Java Basics - Anfänger-Themen 3
G JPEG aus Blob als ImageIcon anzeigen Java Basics - Anfänger-Themen 5
L ImageIcon an jLabel anpassen? Java Basics - Anfänger-Themen 5
T new JLabel(new ImageIcon("dateiname&pfad.gif") Java Basics - Anfänger-Themen 2
B ImageIcon komprimieren (zB Jpeg) Java Basics - Anfänger-Themen 14
D ImageIcon beschreiben Java Basics - Anfänger-Themen 13
U BufferedImage anzeigen, imageIcon oder paintComponent(); Java Basics - Anfänger-Themen 6
M imageicon aus jar (ja hab die suchfunktion schon benutzt :)) Java Basics - Anfänger-Themen 2
F Tooltips bei ImageIcon in Tabellenspalte Java Basics - Anfänger-Themen 1
X ImageIcon und .exe-Datei Java Basics - Anfänger-Themen 2
K Bildgröße eines ImageIcon verändern Java Basics - Anfänger-Themen 2
L bytestrom in ImageIcon-Objekt umwandeln Java Basics - Anfänger-Themen 3
S Image von ImageIcon anpassen Java Basics - Anfänger-Themen 3
D ImageIcon JApplet Java Basics - Anfänger-Themen 2
Dilandau permission exception bei ImageIcon Java Basics - Anfänger-Themen 6
K Verständnis Problem bei Server/Client Java Basics - Anfänger-Themen 2
I WildFily - unterschiedliche Libs im Projekt verursachen Problem Java Basics - Anfänger-Themen 11
imocode Vererbung Problem mit Vererbung Java Basics - Anfänger-Themen 2
L Taschenrechner Problem Java Basics - Anfänger-Themen 4
I Applikationsserver (WildFly) - Zugriff auf Ressourcen.. Problem mit Pfade Java Basics - Anfänger-Themen 10
A ScheduledExecutorService problem Java Basics - Anfänger-Themen 7
marcelnedza Problem mit Weltzuweisung, JavaKarol Java Basics - Anfänger-Themen 13
XWing Methoden rückgabe Problem? Java Basics - Anfänger-Themen 6
M Erste Schritte Collatz Problem max int Java Basics - Anfänger-Themen 3
M Problem bei verschachtelter for-Schleife bei zweidimensionalen Arrays Java Basics - Anfänger-Themen 3
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
nelsonmandela Problem bei Ausgabe einer Switch - Case Funktion Java Basics - Anfänger-Themen 5
frager2345 Problem mit Methode Java Basics - Anfänger-Themen 4
L Problem bei Rechnung mit Math.pow Java Basics - Anfänger-Themen 13
A Thread-Schreibe-Lese-Problem Java Basics - Anfänger-Themen 4
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
sserio BigInteger Problem Java Basics - Anfänger-Themen 4
JordenJost Taschenrechner problem Java Basics - Anfänger-Themen 5
K Problem mit "Random" Java Basics - Anfänger-Themen 5
S Datei anlegen Problem! Groß- und Kleinschreibung wird nicht unterschieden Java Basics - Anfänger-Themen 4
sserio Problem beim Anzeigen Java Basics - Anfänger-Themen 5
xanxk Problem For-Schleife mit Charakter Java Basics - Anfänger-Themen 2
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6
sserio Liste erstellt und ein Problem mit dem Index Java Basics - Anfänger-Themen 8
sserio Schwimmen als Spiel. Problem mit to String/ generate a card Java Basics - Anfänger-Themen 4
J Schleife Problem Java Basics - Anfänger-Themen 2
D Problem mit der Erkennung von \n Java Basics - Anfänger-Themen 2
milan123 das ist meine aufgabe ich hab das problem das bei mir Wenn ich die Richtung der Linien verändern will und drei davon sind richtig, verändere ich die 4 Java Basics - Anfänger-Themen 3
M Verständins Problem bei Aufgabe Java Basics - Anfänger-Themen 4
HeiTim Problem mit der Kommasetzung an der richtigen stelle Java Basics - Anfänger-Themen 59
Temsky34 Problem mit dem Code Java Basics - Anfänger-Themen 17
P Problem mit Calendar.getDisplayName() Java Basics - Anfänger-Themen 8
C Problem mit mehreren Methoden + Scanner Java Basics - Anfänger-Themen 5
P Datei einlesen, nach Begriff filtern und in Datei ausgeben. Problem Standardausgabe über Konsole Java Basics - Anfänger-Themen 19
M Problem mit Klassenverständnis und Button Java Basics - Anfänger-Themen 8
EchtKeineAhnungManchmal hallo habe ein Problem mit einer Datei -> (Zugriff verweigert) Java Basics - Anfänger-Themen 4
H Problem mit Verzweigungen Java Basics - Anfänger-Themen 6
H Problem mit Rückgabewert Java Basics - Anfänger-Themen 7
josfe1234 JAVA FX problem Java Basics - Anfänger-Themen 3
A Code Problem Java Basics - Anfänger-Themen 6
Henri Problem von Typen Java Basics - Anfänger-Themen 7
J Problem mit "ArrayIndexOutOfBoundsException" Java Basics - Anfänger-Themen 11
K jackson Mapping - Problem mit Zeitzonen Java Basics - Anfänger-Themen 10
B Threads Problem mit mehreren Threads Java Basics - Anfänger-Themen 38
I Output BigDecimal anstatt double / Problem beim Rechnen Java Basics - Anfänger-Themen 16
D Schleifen Problem Java Basics - Anfänger-Themen 2
H So viele Fehlermeldungen, dass ich nicht weiß wo das Problem ist. Java Basics - Anfänger-Themen 6
J JAVA-Problem blockiert MEDIATHEKVIEW Java Basics - Anfänger-Themen 13
T Problem mit Lehrzeichen und String bei einfacher Chiffre Java Basics - Anfänger-Themen 8
J extends Problem Java Basics - Anfänger-Themen 2
C Polymorphie-Problem Java Basics - Anfänger-Themen 3
Kalibru Problem bei Ausgabe von Objekt Java Basics - Anfänger-Themen 1
I Format Problem mit Wert - bekomme 0,10 anstatt 10,00 Java Basics - Anfänger-Themen 6
J Problem mit einer Methode die gewissen Inhalt einer Array löschen soll Java Basics - Anfänger-Themen 9
J Problem mit einer Methode, die beliebig viele Objekte in Array speichern soll Java Basics - Anfänger-Themen 6
J Allgemeines Problem mit Klassen Java Basics - Anfänger-Themen 5
U Problem mit dem initialisieren meines Strings in einer Schleife Java Basics - Anfänger-Themen 5
amgadalghabra algorithmisches Problem Java Basics - Anfänger-Themen 19

Ähnliche Java Themen

Neue Themen


Oben