Java Label hat komischen text

SchalliLP

Aktives Mitglied
Hallo,
Ich habe mal ein Pong programmiert und wollte nun Punkteanzeigen hinzufügen.
allerdings zeigt das label meinePunkte folgenden Text anstatt Punkte: 0 an:

Punkte: javax.swing.JLabel{,9,9,500x100,alignmentX=0.0,alig...

Hat jemand ne Ahnung woran das liegt?

[Java]
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.Timer;
import javax.swing.border.EmptyBorder;
import java.awt.event.KeyAdapter;
import java.awt.Font;

public class Pong extends JFrame {

private JPanel contentPane;
ImageIcon Ball = new ImageIcon("Ball.png");
ImageIcon Pannel = new ImageIcon("pannel.png");
JLabel ball = new JLabel(Ball);
JLabel gegnerPannel = new JLabel(Pannel);
JLabel meinPannel = new JLabel(Pannel);

int WIDTH = Toolkit.getDefaultToolkit().getScreenSize().width;
int HEIGTH = Toolkit.getDefaultToolkit().getScreenSize().height;

int xPosBall = WIDTH / 2;
int yPosBall = HEIGTH / 2;
int yPosGegner = HEIGTH / 2;
int yPosIch = HEIGTH / 2;
int ySpeed = 3;
int xSpeed = 5;
int punkteIch = 0;
int punkteGegner = 0;

boolean wPressed = false;
boolean sPressed = false;

Timer Timer;
private final JLabel meinePunkte = new JLabel("Punkte: "+punkteIch);
private final JLabel gegnerPunkte = new JLabel("Punkte: "+punkteGegner);

/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {



try {
Pong frame = new Pong();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}

/**
* Create the frame.
*/
public Pong() {
addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {

if (e.getKeyCode() == KeyEvent.VK_W) {

wPressed = true;

}
if (e.getKeyCode() == KeyEvent.VK_S) {

sPressed = true;

}

}
@Override
public void keyReleased(KeyEvent e) {


if (e.getKeyCode() == KeyEvent.VK_W) {

wPressed = false;

}
if (e.getKeyCode() == KeyEvent.VK_S) {

sPressed = false;

}
}
});

Timer = new Timer(20, new Bewegung());
Timer.start();

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(0, 0, WIDTH, HEIGTH);
contentPane = new JPanel();
contentPane.setBackground(Color.BLACK);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
setUndecorated(true);

ball.setBounds(152, 113, 30, 30);
contentPane.add(ball);

gegnerPannel.setBounds(WIDTH - 50, yPosGegner / 2 - 170 / 2, 30, 170);
contentPane.add(gegnerPannel);
meinPannel.setBounds(50, yPosIch / 2 - 170 / 2, 30, 170);
contentPane.add(meinPannel);
meinePunkte.setFont(new Font("Tahoma", Font.PLAIN, 18));
meinePunkte.setForeground(Color.WHITE);
gegnerPunkte.setFont(new Font("Tahoma", Font.PLAIN, 18));
gegnerPunkte.setBounds(0, 0, 500, 100);

contentPane.add(meinePunkte);
meinePunkte.setBounds(WIDTH-300, 0, 500, 100);
gegnerPunkte.setForeground(Color.WHITE);

contentPane.add(gegnerPunkte);
}

public void Bewegung() {

if (yPosBall <= 0) {

ySpeed = 2;

}
if (yPosBall >= HEIGTH - 30) {

ySpeed = -2;

}

yPosBall = yPosBall + ySpeed;

}

public class Bewegung implements ActionListener {

@Override
public void actionPerformed(ActionEvent arg0) {

abprallen();
ballBewegen();
gegnerBewegen();
michBewegen();
punkt();
frame();

}

private void michBewegen() {

if (wPressed && sPressed) {
/*
* Da beide Tasten gepresst sind werden beide ignoriert
*/
} else if (wPressed) {

yPosIch = yPosIch - 3;

} else if (sPressed) {
yPosIch = yPosIch + 3;

} else {
/*
* Keine Tasten gedrückt
*/
}

if (yPosIch < 0) {

yPosIch = 0;

}
if (yPosIch > HEIGTH - 170 / 2) {

yPosIch = HEIGTH - 170 / 2;

}

meinPannel.setBounds(50, yPosIch, 30, 170);
}

private void frame() {
ball.setBounds(xPosBall, yPosBall, 30, 30);
meinePunkte.setText("Punkte: "+punkteIch);
gegnerPunkte.setText("Punkte: "+gegnerPunkte);

}

private void punkt() {
if (xPosBall < 20) {
punkteGegner++;
zurücksetzen();
} else if (xPosBall > WIDTH - 20) {
punkteIch++;
zurücksetzen();
}

}

private void zurücksetzen() {
xPosBall = WIDTH / 2;
yPosBall = HEIGTH / 2;
yPosGegner = HEIGTH / 2 - 170 / 2;
yPosIch = HEIGTH / 2 - 170 / 2;

gegnerPannel.setBounds(WIDTH - 50, yPosGegner - 170 / 2, 30, 170);
meinPannel.setBounds(50, yPosIch - 170 / 2, 30, 170);

ySpeed = (int) (10 * Math.random() - 5);
while (ySpeed < 2 && ySpeed > -2) {

ySpeed = (int) (6 * Math.random() - 3);

}

}

private void gegnerBewegen() {

if (yPosGegner + 100 < yPosBall) {

yPosGegner = yPosGegner + 3;

} else if (yPosGegner - 100 > yPosBall) {

yPosGegner = yPosGegner - 3;

}

if (yPosGegner < 0) {

yPosGegner = 0;

}
if (yPosGegner > HEIGTH - 170 / 2) {

yPosGegner = HEIGTH - 170 / 2;

}

gegnerPannel.setBounds(WIDTH - 50, yPosGegner - 170 / 2, 30, 170);

}

private void ballBewegen() {
yPosBall = yPosBall + ySpeed;
xPosBall = xPosBall + xSpeed;

}

private void abprallen() {
if (yPosBall < 0 || yPosBall > HEIGTH - 30) {

ySpeed = ySpeed * -1;

}

if (xPosBall < 80
&& (yPosBall+30 >= yPosIch && yPosBall <= yPosIch + 170)&&xPosBall>=75) {

xSpeed = xSpeed * -1;

}

if (xPosBall > WIDTH - 80
&& (yPosBall+30 >= yPosGegner && yPosBall <= yPosGegner-30 + 170)&&xPosBall>=WIDTH-75) {

xSpeed = xSpeed * -1;

}

}

}

}
[/code]
 

Gucky

Top Contributor
Das sieht so aus, als ob du toString vom Panel aufrufen würdest, was du allerdings nicht tust. :D

Debug mal und guck nach, was in der Variable steht.
 

Joose

Top Contributor
allerdings zeigt das label meinePunkte folgenden Text anstatt Punkte: 0 an:

Punkte: javax.swing.JLabel{,9,9,500x100,alignmentX=0.0,alig...

[Java]private void frame() {
ball.setBounds(xPosBall, yPosBall, 30, 30);
meinePunkte.setText("Punkte: "+punkteIch);
gegnerPunkte.setText("Punkte: "+gegnerPunkte);

}
[/code]

Das Problem liegt nicht beim Label "meinePunkte" sondern am Label "gegnerPunkte"!
Du fügst hier folgenden Text zusammen > "Punkte" + gegnerPunkte
gegnerPunkte ist in diesem Fall aber das JLabel selber und nicht die Integer Variable, durch die String Verkettung wird die "toString()" Methode des JLabels aufgerufen -> Ergebnis ist die obrige Ausgabe! :)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Java FX - Label aktualisieren Java Basics - Anfänger-Themen 1
M Java GUI label ändert sich erst zum Schluss Java Basics - Anfänger-Themen 4
W Java label nicht ansprechbar Java Basics - Anfänger-Themen 7
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2
julian-fr Wie kann ich am besten Java lernen? Java Basics - Anfänger-Themen 17
A Java-Properties und -RessourceBundles Java Basics - Anfänger-Themen 5
lrnz22 Java-Basics-Aufgabe Java Basics - Anfänger-Themen 8
R Java kann nicht installiert werden Java Basics - Anfänger-Themen 8
marcelnedza Finde meinen Fehler in einer Methode nicht, Java Karol Java Basics - Anfänger-Themen 15
G In ein java Dokument Ton einbinden Java Basics - Anfänger-Themen 1
C was heisst es wenn java ']' erwartet ? Java Basics - Anfänger-Themen 2
KeinJavaFreak Erste Schritte Programm "Java(TM) Platform SE binary " nicht vorhanden Java Basics - Anfänger-Themen 1
KeinJavaFreak Erste Schritte Java "Executable Jar File" nicht vorhanden Java Basics - Anfänger-Themen 1
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
J Java Testklasse Java Basics - Anfänger-Themen 5
P Java Selenium . Parameterized.Parameters erzeugt eine Fehlermeldung Java Basics - Anfänger-Themen 14
W Java-Code mit Array Java Basics - Anfänger-Themen 14
W Java-Code Java Basics - Anfänger-Themen 2
P BeforeEach AfterEach werden nicht ausgeführt. Java / Selenium Java Basics - Anfänger-Themen 4
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
W Java code- TicTac toe Java Basics - Anfänger-Themen 51
Ostkreuz Java Docs Java Basics - Anfänger-Themen 9
R Java boolean Unterschied " == " und " = " Java Basics - Anfänger-Themen 3
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
W Java-code Java Basics - Anfänger-Themen 8
W Java-code Java Basics - Anfänger-Themen 9
W Java-Code erklären Java Basics - Anfänger-Themen 6
A Java Kurs / Tutorial Java Basics - Anfänger-Themen 6
K Java Lotto Spiel; ich komme nicht weiter Java Basics - Anfänger-Themen 15
R Operatoren Rechenoperation in Java verwenden für Calculator Java Basics - Anfänger-Themen 2
P Java 2n Potenzieren Java Basics - Anfänger-Themen 1
J Java Hamster Java Basics - Anfänger-Themen 4
D Wie sehe ich ein Java-Programm? Java Basics - Anfänger-Themen 27
V Die Funktion des neuen Schlüsselworts in Java Java Basics - Anfänger-Themen 1
W Junit-Test (Java) Java Basics - Anfänger-Themen 4
W Testfälle bei Java ( Junit-Test) Java Basics - Anfänger-Themen 3
laxla123 If-else Java Java Basics - Anfänger-Themen 4
RashAGhul Java Verwaltungstool Erstellen mit kaum Wissen Java Basics - Anfänger-Themen 9
S Substring in java Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben