Zeichnen in Java

mavinatic

Bekanntes Mitglied
Hallo ihrs ich habs schon sooft probiert ne Map zu zeichnen aber irgendwie wird bei mir nichts gezeichnet könntet ihr mir verraten worans liegt?

Ich habe einmal mein MainPanel wo quasi alles zusammengefügt wird:

Java:
public class MainPanel extends JPanel
{
	public MainPanel() throws IOException
	{
		ReadMap rm = new ReadMap();
		
		Playground ground = new Playground(rm.getMap());
		
		add(ground);
	}
	
	
}

Dann habe ich meinen "Playground" - Meinen Spielplatz:

Java:
package Map;

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.ArrayList;

import javax.swing.JPanel;

public class Playground extends JPanel
{
	int[][] map = null;
	ReadImages ri = new ReadImages();
	ArrayList<BufferedImage> loadImages = ri.getImages();
	
	public Playground(int[][] map) throws IOException {
		this.map = map;
	}
	
		public void paint(Graphics g) {
		for(int i=0; i<map.length; i++)
		{
			for(int j=0; j<map[i].length; j++)
			{
				g.drawImage(loadImages.get(0), i*32, j*32, null);
				System.out.print(map[i][j]);
			}
			System.out.println();
		}
	}
	
}

Hier das komische ist wenn ich Über den Konstruktor die int[][] übergebe und dort teste mit einer doppelten for schleife ob die integer werte richtig sind funktioniert das aber wenn ich das in der PaintMethode überprüfe...sind anstatt 16Integerzahlen das doppelte - somit 32?! Warum? wo ist der Unterschied.

Dann habe ich noch eine ReadImages Klasse wo alle Images geladen werden in einem Array :)

Java:
package Map;

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;

import javax.imageio.ImageIO;

public class ReadImages {
	//Bilder inizialisieren
	String[] imagesPath = new String[] {"images/graslo.PNG", 
										"images/grasl.PNG", 
										"images/graslu.PNG", 
										"images/grasu.PNG",
										"images/grasru.PNG",
										"images/grasr.PNG",
										"images/grasro.PNG",
										"images/graso.PNG",
										"images/grasm.PNG"};
	
	BufferedImage[] images = new BufferedImage[imagesPath.length];
	ArrayList<BufferedImage> loadImages = new ArrayList<BufferedImage>();
	
	public ReadImages() throws IOException
	{
		for(int i=0; i<images.length; i++) {
			images[i] = ImageIO.read(new File(imagesPath[i]));
			loadImages.add(images[i]);
		}
	}
	
	public ArrayList<BufferedImage> getImages()
	{
			return loadImages;
	}
}

Konnte ich noch nicht testen...aber es tritt keine Exepction auf... :)

Und zu guter letzt hab ich noch die Klasse ReadMap die bald noch erweitert wird damit man Maps aus der Datei laden kann zurzeit nur ein simples Array :)

Java:
package Map;

public class ReadMap {
	int[][] map = new int[][] {
			{ 0,0,0,0 },
			{ 0,0,0,0 },
			{ 0,0,0,0 },
			{ 0,0,0,0 }
	};
	
	//GrasLinksOben: 	0
	//GrasLinks:	 	1	
	//GrasLinksUnten:	2
	//GrasUnten			3
	//GrasRechtsUnten	4
	//GrasRechts		5
	//GrasRechtsOben	6
	//GrasOben			7
	
	public int[][] getMap()
	{
		return map;
	}
}

Bei mir wird nur der leere Frame angezeigt...(Natürlich habe ich JFrame klasse etc... wollte nur nicht posten ist ja eig überflüssig...MainPanel habe ich aufs Frame gefügt). Alles was ich sehe ist nur der Frame ohne Zeichnungen :( Könnt ihr mal bitte drüber gucken ich finde den fehler nicht?! Bin noch nicht lange in der grafischen Programmierung unterwegs :p Danke im vorraus :)
 

Landei

Top Contributor
Probiere mal paintComponent statt paint.

Hast du mal versucht, ob die Bilder richtig geladen sind (z.B. als Icon in ein JLabel eingefügt)?

Übrigens brauchst du das images[]-Array nicht:
Java:
    public ReadImages() throws IOException
    {
        for(int i=0; i<images.length; i++) {
           loadImages.add(ImageIO.read(new File(imagesPath[i])));
        }
    }
 
Zuletzt bearbeitet:
G

Gast2

Gast
Hab mir jetzt nicht alles durchgelesen, aber:
Java:
public void paint(Graphics g) {
Bei Swing komponenten überschreibt man
Code:
paintComponent()
.
 

mavinatic

Bekanntes Mitglied
Hey ich hab mal nun ein Screenshot gemacht :p dann siehst du was passiert ist ^^

javatest.jpg


Aber wie gesagt das kleine Bildchen müsste 32*32 Pixel groß sein und das sind im leben keine 32 pixel! und es müsste ein 4x4 feld sein weder noch :/ was ist daran falsch?!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Java Swing - Dreieck zeichnen mit verschiedenen Variablen Java Basics - Anfänger-Themen 8
B Java JFrame zeichnen Java Basics - Anfänger-Themen 4
J Graphen in Java zeichnen Java Basics - Anfänger-Themen 11
W Wie kann ich in Java eine Kurve aus Punkten zeichnen? Java Basics - Anfänger-Themen 25
B Java Graphen zeichnen - Brauche Hilfe Java Basics - Anfänger-Themen 9
M in Java zeichnen Java Basics - Anfänger-Themen 2
S Punkt in Java zeichnen Java Basics - Anfänger-Themen 14
H 27 Kreise Zeichnen Java Applet Java Basics - Anfänger-Themen 2
K Polygon in Java3D (Java 3D) zeichnen Java Basics - Anfänger-Themen 4
Q Graisch zeichnen mit java Java Basics - Anfänger-Themen 8
S Quadratische Funktion mit Java primitiv zeichnen. Java Basics - Anfänger-Themen 6
P Java-Applet, Kreis zeichnen Java Basics - Anfänger-Themen 4
A In Java zeichnen - Fragen Java Basics - Anfänger-Themen 4
J SWING UI Designer und zeichnen Java Basics - Anfänger-Themen 4
luggas89 Mit Jframe live zeichnen Java Basics - Anfänger-Themen 4
K 3D Fläche Zeichnen Java Basics - Anfänger-Themen 2
J Bild auf Hintergrundbild zeichnen Java Basics - Anfänger-Themen 5
R Iterativ zeichnen Java Basics - Anfänger-Themen 1
P JFrame, Linien zeichnen, MouseListener Java Basics - Anfänger-Themen 2
KogoroMori21 Mit einer Schleife eine Treppe zeichnen Java Basics - Anfänger-Themen 29
V Speicherzustand zeichnen Java Basics - Anfänger-Themen 0
O Klappt nicht: Ein Panel neu zeichnen Java Basics - Anfänger-Themen 3
CptK Interface Bilder mit Graphics g zeichnen Java Basics - Anfänger-Themen 7
Mosquera f(x)=x² zeichnen Java Basics - Anfänger-Themen 5
L Anfängerin möchte Linie zeichnen Java Basics - Anfänger-Themen 8
D JPanel mehrere Formen zeichnen Java Basics - Anfänger-Themen 5
S Zeichnen mit Wiederholungen Java Basics - Anfänger-Themen 12
B Wie kann ich Linien rekursiv zeichnen? Java Basics - Anfänger-Themen 4
P Einen String mittig zeichnen? Java Basics - Anfänger-Themen 1
T Koordinatensystem zeichnen - Variablen merken? Quadratische Funktion zeichnen? Java Basics - Anfänger-Themen 5
M Ein Bild durch Objekterzeugung zeichnen Java Basics - Anfänger-Themen 5
snipesss Linie zeichnen ohne extra Klasse? Java Basics - Anfänger-Themen 3
C Umrisse von Bilddateien mithilfe Polygonen zeichnen Java Basics - Anfänger-Themen 5
G Aus einem Code ein Sequenzdiagramm zeichnen? Java Basics - Anfänger-Themen 1
K Rechtecke rekursiv zeichnen Java Basics - Anfänger-Themen 20
V Quadrate rekursiv zeichnen Java Basics - Anfänger-Themen 7
C Schleifenaufgabe - Molekül zeichnen Java Basics - Anfänger-Themen 6
K Ungenauigkeit beim Zeichnen von Funktionen Java Basics - Anfänger-Themen 6
H Linie zeichnen... Java Basics - Anfänger-Themen 16
N Treppe zeichnen Java Basics - Anfänger-Themen 1
M Quadrat zeichnen einfach bitte! Java Basics - Anfänger-Themen 2
P Shape Zeichnen klappt nicht - einlesen der Breite/Höhe schon Java Basics - Anfänger-Themen 1
J JLabel Icon neu zeichnen Java Basics - Anfänger-Themen 2
J Rechteck zeichnen mit Canvas Java Basics - Anfänger-Themen 7
D Zeichnen, Schleifen Java Basics - Anfänger-Themen 7
S Zeichnen , Schleifen Java Basics - Anfänger-Themen 4
S Rechteck zeichnen Java Basics - Anfänger-Themen 2
S Ein Graphics Obejct mehrmals mit denselben Eigenschaften zeichnen lassen?!?!? Java Basics - Anfänger-Themen 4
S Wo beginnt ein Draw String zu zeichnen. Java Basics - Anfänger-Themen 4
S Paint Anwendung: Freihandlinien zeichnen Java Basics - Anfänger-Themen 4
llabusch Layout neu zeichnen lassen Java Basics - Anfänger-Themen 2
A Histogramm zeichnen Java Basics - Anfänger-Themen 2
E Dreieck zeichnen Java Basics - Anfänger-Themen 3
gamebreiti Methoden JPanel nach clearAll() und add neu zeichnen Java Basics - Anfänger-Themen 1
T Baum mit Turtle zeichnen Java Basics - Anfänger-Themen 2
C Hilfe beim Zeichnen Java Basics - Anfänger-Themen 8
D Haus zeichnen Java Basics - Anfänger-Themen 4
K Methoden Objekt auf JFrame zeichnen Java Basics - Anfänger-Themen 16
S Problem mit "Zeichnen auf Kommando" Java Basics - Anfänger-Themen 2
M Double Punkte Zeichnen Java Basics - Anfänger-Themen 7
S Funktionen zeichnen Java Basics - Anfänger-Themen 2
2 Bild auf JApplet zeichnen Java Basics - Anfänger-Themen 18
R 2D Grafik zeichnen Java Basics - Anfänger-Themen 4
F Line zeichnen und Werte ändern Java Basics - Anfänger-Themen 6
B Grafik zeichnen Java Basics - Anfänger-Themen 25
B Erste Schritte Weihnachtsbaum zeichnen Java Basics - Anfänger-Themen 6
N Per Button Kreis zeichnen Java Basics - Anfänger-Themen 8
T mehrere Punkte zeichnen ohne löschung Java Basics - Anfänger-Themen 4
J Für 3 Sekunden etwas bestimmtes zeichnen Java Basics - Anfänger-Themen 8
C Kreis nach Mausklick zeichnen Java Basics - Anfänger-Themen 5
C Auf Button-Druck zeichnen Java Basics - Anfänger-Themen 2
R Methoden Zeichnen auf Button-Druck durch Paint-Methode Java Basics - Anfänger-Themen 2
D Klassen Zeichnen von Figuren mittels vorgegebener Klasse Java Basics - Anfänger-Themen 3
J Schachbrett zeichnen Java Basics - Anfänger-Themen 9
J Innerhalb der Border zeichnen Java Basics - Anfänger-Themen 9
J Hoher Speicherverbrauch beim Zeichnen von Images aus einer ArrayList Java Basics - Anfänger-Themen 10
A Blitze mit Linien zeichnen Java Basics - Anfänger-Themen 15
U Kreis um Textfelder zeichnen Java Basics - Anfänger-Themen 4
R Balkendiagramm zeichnen Java Basics - Anfänger-Themen 14
J Bild anhand von Koordinaten zeichnen Java Basics - Anfänger-Themen 10
B GUI Parkplatz zeichnen Java Basics - Anfänger-Themen 10
S Mehrere Zeichnungen zeichnen Java Basics - Anfänger-Themen 16
A Linie Zeichnen Applet mit Double Wert Java Basics - Anfänger-Themen 3
F Image übertragen und zeichnen Java Basics - Anfänger-Themen 8
P Funktion zeichnen Java Basics - Anfänger-Themen 6
Q Zeichnen außerhalb der paint-methode Java Basics - Anfänger-Themen 7
F zeichnen in JPanel Java Basics - Anfänger-Themen 7
T Transparente Bilder mit Graphics zeichnen Java Basics - Anfänger-Themen 17
T Sterne zeichnen Java Basics - Anfänger-Themen 4
M Bilder laden und zeichnen Java Basics - Anfänger-Themen 3
G Polygon in Frame zeichnen Java Basics - Anfänger-Themen 3
S X Zeichnen als Muster ausgeben Java Basics - Anfänger-Themen 5
P Kurven zeichnen Java Basics - Anfänger-Themen 5
I dauerhaftes zeichnen Java Basics - Anfänger-Themen 3
H Zeichnen in JPanel Java Basics - Anfänger-Themen 8
W Funktions-Graphen "zeichnen" Java Basics - Anfänger-Themen 2
J Bilder auf Bilder zeichnen Java Basics - Anfänger-Themen 8
I Rechteck Zeichnen Java Basics - Anfänger-Themen 9
W Zeichnen in Swing Java Basics - Anfänger-Themen 7
N Linie auf spezielle Area zeichnen Java Basics - Anfänger-Themen 9

Ähnliche Java Themen

Neue Themen


Oben