2D-Grafik String aus array wird nicht angezeigt

J@ckWhiteIII

Mitglied
Hallo,
zuerst einmal muss ich sagen, dass ich ein ziemlicher Neuling bei Java/OOP bin. Ich habe vorher mit PureBasic gearbeitet, wo ich jedoch nach gut 2 Jahren an die Grenzen der Sprache getroffen war. Ein Klassenkamerad programmiert in Java, durch ihn habe ich also begonnen, mich ein wenig hineinzulesen. Variablentypen kannte ich ja schon, einige für "richtige" Frischlinge schwierigen Logikprobleme waren durch meine Erfahrung mit PureBasic auch kein Problem. Nun wollte ich auf einem JFrame einen Canvas öffnen und darauf Buchstaben ausgeben, die durch eine for-Schleife angezeigt werden sollen. Da es jedoch verschiedene Buchstaben sein sollen, legte ich ein String-Array an. Nun komme ich zum eigentlichen Problem: In der paint() Methode wird der String nicht angezeigt, gebe ich jedoch einen String direkt ein (z.B. "G"), dann wird er angezeigt. Außerdem kann ich sicher sein, dass der String tatsächlich im Array ist, da, wenn ich in der paint() Methode ein System.out.println(name des arrays[nummer]) einfüge, mir der String in der Konsole von Eclipse ausgegeben wird.
Dies ist mein Code, der euch wahrscheinlich sehr wirr vorkommen wird, da ich gerade erst angefangen habe:

Klasse "Game"
Java:
import java.awt.*;

import javax.swing.*;

public class Game extends JFrame {
	
	Game(){
		init();
	}
	
	public void init(){
		JFrame frame = new JFrame();
		frame.setTitle("Char war");
		frame.setSize(800, 600);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setResizable(false);
		Screen s = new Screen();
		frame.add(s);
		frame.setLocationRelativeTo(null);
		setLayout(new GridLayout(1,1,0,0));
		frame.setVisible(true);
	}

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

Klasse "Screen":
Java:
import java.awt.*;
import java.util.Random;

import javax.swing.*;

public class Screen extends Canvas implements Runnable {
	
	public static Thread t = new Thread();
	
	public static String charry[] = new String[20]; //erstellen des arrays
	public static int x = 10; //0
	public static int y = 10; //0
	
	public Screen(){
		for(int r = 0;r<charry.length;r++){ //jedem teil des arrays "a" zuweisen
			charry[r] = "a";
		}
		t.start();
	}
	
	public void paint(Graphics g){
		g.setColor (new Color(0,0,0));
		g.fillRect(0, 0, 800, 600);
		g.setColor (new Color(255,0,0));
		for (int i=0;i<charry.length;i++){
			g.drawString(charry[i], x, y); //charry[i] anzeigen
			x += 15; //für das x
			if (x>800){
				x = 0;y+=20; // "zeilenumbruch"
			}
		}
		x=0;y=0;
		g.drawString("a", x+10, y+10); //Test für das Anzeigen (funktioniert!)
	}

	public void run() {
        while(true){
			repaint();
			try{
				Thread.sleep(20);
			}catch(Exception e){
				e.printStackTrace();
			}
		}
		
	}

}

Ich hoffe, dass ihr mit dem Code etwas anfangen könnt. Falls es sonstige Verbesserungsvorschläge gibt, werden die natürlich gerne angenommen :) Danke im Vorraus
 

bERt0r

Top Contributor
Verwende nicht Canvas(AWT) mit JFrame(Swing). AWT und Swing sollte man nicht mischen, braucht man auch nicht. Benutze einfache in JPanel, das kann das gleiche.
 

J@ckWhiteIII

Mitglied
ACHTUNG, Problem ist gelöst. Der x-Wert beträgt am Ende nur 300, so dass der Zeilenumbruch nie ausgeführt wird. Da der y-Wert 0 ist, befindet sich die Schrift HINTER der Fensterleiste. Ja, Denkfehler. Tut mir leid.

@bERt0r, weißt du, ob Eins von beiden Schneller ist?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Zwei String Array in eine Spalte einfügen AWT, Swing, JavaFX & SWT 1
S String Array Ausgabe im JLabel ??? AWT, Swing, JavaFX & SWT 8
F Swing String Array mit JTextArea anzeigen AWT, Swing, JavaFX & SWT 13
S Suchen im String-Array AWT, Swing, JavaFX & SWT 3
C Swing Übergabe von String an JLabel AWT, Swing, JavaFX & SWT 9
2 JavaFX die ChoiceBox leitet den String nicht weiter oder es komm zu einem NullPointer AWT, Swing, JavaFX & SWT 8
officialmaxl JavaFX Textfield getTextfield() in String speichern AWT, Swing, JavaFX & SWT 1
H String zu int/long AWT, Swing, JavaFX & SWT 8
D String als Textdatei in ausgewähltem Speicherplatz speichern AWT, Swing, JavaFX & SWT 32
R Swing Ein gezeichneten String aus dem JFrame löschen AWT, Swing, JavaFX & SWT 5
H String teilen, damit bei JLabel keine Punkte am Ende angezeigt werden AWT, Swing, JavaFX & SWT 4
J SWT Search string highlite AWT, Swing, JavaFX & SWT 5
M JavaFX String aus TextField reagiert nicht wie erwartet AWT, Swing, JavaFX & SWT 3
F RGB-Werte aus einem String einlesen AWT, Swing, JavaFX & SWT 26
J Event Handling Input auf String testen, Fehlermeldung ausgeben AWT, Swing, JavaFX & SWT 4
D JavaFX ComboBox String setzen AWT, Swing, JavaFX & SWT 20
Y Darstellung und MouseHover bei bestimmten Wörtern in einem String AWT, Swing, JavaFX & SWT 2
X Zeilen aus einer Textdatei einzelnd als String abrufen AWT, Swing, JavaFX & SWT 8
KilledByCheese Event Handling Vom ActionEvent auf String zugreifen - genaueres in der Beschreibung AWT, Swing, JavaFX & SWT 3
T replace string AWT, Swing, JavaFX & SWT 1
D String zu StringProperty Konvertieren AWT, Swing, JavaFX & SWT 4
T jTextField mit String befüllen AWT, Swing, JavaFX & SWT 1
E Eigenes TableModel für ArrayList<String[]> AWT, Swing, JavaFX & SWT 5
F Swing String[] in JTextArea ausgeben. Jeder Eintrag in neue Zeile, aber ohne "\n"- Geht das? AWT, Swing, JavaFX & SWT 3
P DefaultStyledDocument eingegebenen String durchsuchen und bestimmte Sachen einfärben AWT, Swing, JavaFX & SWT 1
B 2D-Grafik String drehen/platzieren/formatieren in bestimmten Bereich AWT, Swing, JavaFX & SWT 1
A Swing Logikaufgabe: Zeilenanzahl einer JTable mit 3d String dynamisch anpassen AWT, Swing, JavaFX & SWT 2
S XML Output String Format AWT, Swing, JavaFX & SWT 2
R Swing JTextField getText() liefert leeren String AWT, Swing, JavaFX & SWT 6
P Swing String mit unterschiedlichen Formaten zusammenbauen AWT, Swing, JavaFX & SWT 14
T Swing HTML Text aus JLabel ohne "HTML-Tags" in String einlesen AWT, Swing, JavaFX & SWT 5
L Swing JToogleButton Vordergrundfarbe bei HTML String AWT, Swing, JavaFX & SWT 4
T Swing JProgressBar mit String unschön AWT, Swing, JavaFX & SWT 5
M Swing String zerlegen AWT, Swing, JavaFX & SWT 2
J Swing String soll als Variable dienen AWT, Swing, JavaFX & SWT 11
A Text (String) zu einer Box hinzufügen AWT, Swing, JavaFX & SWT 16
D textfeld string zu float AWT, Swing, JavaFX & SWT 5
B Color String Code AWT, Swing, JavaFX & SWT 3
C JTextArea scrollt bei append(String) aus Threads nicht ans Ende AWT, Swing, JavaFX & SWT 7
E selektierter Datensatz in JList als String Datentyp AWT, Swing, JavaFX & SWT 23
S String is null Fehler AWT, Swing, JavaFX & SWT 2
M SomeClass.class.getResourceAsStream(String filename) funktioniert nicht in jar) AWT, Swing, JavaFX & SWT 32
B JTable Component mit String? AWT, Swing, JavaFX & SWT 4
D JSplitPane, Jtree, CardLayout (constraint must be a string) AWT, Swing, JavaFX & SWT 9
L SWT Text SelectionText ersetzen durch anderen String AWT, Swing, JavaFX & SWT 6
B Color.BLUE in String umwandeln AWT, Swing, JavaFX & SWT 4
H String auf Knopfdruck in JPanel zeichnen. AWT, Swing, JavaFX & SWT 6
P 2D-Grafik String übergeben, PNG soll rauskommen AWT, Swing, JavaFX & SWT 9
A Formatierten String ausgeben (drawString) AWT, Swing, JavaFX & SWT 5
S Swing Grundprinzip String ausgeben, aber wie? AWT, Swing, JavaFX & SWT 6
R JComboBox Ausgabe in String speichern AWT, Swing, JavaFX & SWT 3
TiME-SPLiNTER Swing JListModel: String rendern AWT, Swing, JavaFX & SWT 2
R String in JFrame ausgeben AWT, Swing, JavaFX & SWT 10
D Zwei String Attribute über eine Methode als Zeilen in einer Tabelle darstellen AWT, Swing, JavaFX & SWT 9
C Swing Text eines JButton mit String definieren? Reihenfolge? AWT, Swing, JavaFX & SWT 6
S [Button] setText("String") AWT, Swing, JavaFX & SWT 5
1 BufferedImage in byte[], dann in String und zurück AWT, Swing, JavaFX & SWT 7
I String lowercase, uppercase und umdrehen AWT, Swing, JavaFX & SWT 3
D Swing JTextField String anhängen AWT, Swing, JavaFX & SWT 7
P Canvas: String wird nicht gezeichnet AWT, Swing, JavaFX & SWT 5
D SWT String aus Textfeld auslesen und in eine Tabelle speichern AWT, Swing, JavaFX & SWT 5
T SWT String mitten ins Textfeld einfügen + richtige Cursorposition AWT, Swing, JavaFX & SWT 3
T Swing Wie kann ich einen String in ein TreePath umwandeln? AWT, Swing, JavaFX & SWT 5
H String ausführen und damit weiterarbeiten AWT, Swing, JavaFX & SWT 4
radiac AWT Mausposition als String ausgeben??? AWT, Swing, JavaFX & SWT 5
U Swing Eingabe von JTextField in einen String übergeben. AWT, Swing, JavaFX & SWT 3
N SWT Ende vom String in Text anzeigen AWT, Swing, JavaFX & SWT 5
B ActionEvent Dateipfad als String übergeben AWT, Swing, JavaFX & SWT 11
bugmenot JTextPane String stimmt nicht mit übergebenem String überein AWT, Swing, JavaFX & SWT 9
G JTextArea: String formatieren AWT, Swing, JavaFX & SWT 2
G Ein Wort in einem String färben in einer Canvas AWT, Swing, JavaFX & SWT 10
S List<String> in JTextArea! AWT, Swing, JavaFX & SWT 4
F kleines problem beim suchen in einem String AWT, Swing, JavaFX & SWT 15
G in JTextField wie in der Console Ein String ein lesen AWT, Swing, JavaFX & SWT 8
G Date in einen String umwandeln AWT, Swing, JavaFX & SWT 4
S schauen ob ein string leer ist AWT, Swing, JavaFX & SWT 4
B JTextPane und Image importieren in HTML String. AWT, Swing, JavaFX & SWT 2
mabe83 Swing: jTableCellRenderer -> Klappt nur bei String-Spalte AWT, Swing, JavaFX & SWT 2
O String aus Klasse X in Klasse Y befördern AWT, Swing, JavaFX & SWT 12
M leerzeichen aus string entfernen AWT, Swing, JavaFX & SWT 3
S String an eine andere Klasse im anderem package übergeben AWT, Swing, JavaFX & SWT 3
B NullPointerException bei String vergleich AWT, Swing, JavaFX & SWT 5
T String in String [] umwandeln?? AWT, Swing, JavaFX & SWT 4
S Checkbox oder String in JTable-Spalte AWT, Swing, JavaFX & SWT 4
E Frage zum String AWT, Swing, JavaFX & SWT 6
M BufferedImage mit html interpretierten String beschriften AWT, Swing, JavaFX & SWT 3
K Choice auswahl und String in Int AWT, Swing, JavaFX & SWT 8
Y entfernten String einer JTextPane per DocumentListener AWT, Swing, JavaFX & SWT 5
C string wird mehr fach gezeichnet AWT, Swing, JavaFX & SWT 3
S String aus JTextField AWT, Swing, JavaFX & SWT 11
B JTable String übergeben AWT, Swing, JavaFX & SWT 3
C string spiegeln AWT, Swing, JavaFX & SWT 14
M jEditorPane String to html AWT, Swing, JavaFX & SWT 2
A String aus einem JTextField an ein JLabel übergeben AWT, Swing, JavaFX & SWT 10
S double in String umwandeln AWT, Swing, JavaFX & SWT 6
R Double in der Tabelle statt String und Integer AWT, Swing, JavaFX & SWT 3
G ActionListener zu String hinzufügen AWT, Swing, JavaFX & SWT 2
I JProgressBar String anzeigen, danach wieder normale Ansicht AWT, Swing, JavaFX & SWT 3
G Quadratmeter im String darstellen AWT, Swing, JavaFX & SWT 2
F String aus JTextField AWT, Swing, JavaFX & SWT 5

Ähnliche Java Themen

Neue Themen


Oben