# integer auf Label ausgeben



## Zaphi67 (16. Apr 2009)

Ich habe zum üben ein kleines Würfelprogramm mit 2 Würfeln geschrieben und in ein GUI verpackt. Ich habe 2 Labels drin. Im ersten Label soll die Augensumme ausgegeben werden (label.setText(x1 + x2). Im zweiten soll festgestellt werden ob 2 Würfel gleich sind (x1 == x2) und dann ausgegeben werden das es sich um einen Pasch handelt mit dem Wert dahinter (label.setText("Pasch"+x1). 
Leider akzeptiert ein Label wohl nicht sowie die Konsole interger Werte(TextField wohl auch nicht). Welche Möglichkeit gibt es soetwas zu realiesieren?
Kann man in nem Label Font und Textfarbe festlegen? Hab sowas nur bei TextField gefunden. Will aber eigentlich kein Textfield.


----------



## Ark (16. Apr 2009)

Man denkt sich "Hm, Problem mit int, muss String werden", guckt in der API-Dokumentation nach passend klingenden Paketen wie java.lang, findet dort eine Klasse Integer und denkt sich nach den Namenskonventionen eine Methode toString():

```
blubb.setText(Integer.toString(x1));
```
Ark

(Dass Anfänger immer gleich mit GUIs kommen müssen ... schrecklich.)


----------



## Zaphi67 (16. Apr 2009)

Ark hat gesagt.:


> Man denkt sich "Hm, Problem mit int, muss String werden", guckt in der API-Dokumentation nach passend klingenden Paketen wie java.lang, findet dort eine Klasse Integer und denkt sich nach den Namenskonventionen eine Methode toString():
> 
> ```
> blubb.setText(Integer.toString(x1));
> ...



Hmmm..an die Möglichkeit int in String umzuwandeln hab ich garnicht gedacht.
Danki *freu*


----------



## Schandro (16. Apr 2009)

an Ark's Antwort sieht man, wie es bergab geht mit java-forun.org... (nicht auf den inhalt bezogen)

@TO
setText von JLabel erwartet einen String als parameter. Umwandeln geht z.b. mit String.valueOf(...)
oder mit
""+myInt
falls du das mal irgendwann sehen solltest und dich fragst was das ist.

mit setForeground(myColor) legt man die Schriftbfarbe, mit setFont(myFont) die Schriftart fest.
Mit welchen Parametern man ein Object von Color bzw. Font erstellt steht in der API


----------



## Tomate_Salat (16. Apr 2009)

Das geht doch auch einfacher:


```
blubb.setText(x1 + "");
```


----------



## Schandro (16. Apr 2009)

Wer sich näher dafür interessiert:
http://www.java-forum.org/java-basics-anfaenger-themen/81151-valueof.html


----------



## faetzminator (16. Apr 2009)

Tomate_Salat hat gesagt.:


> Das geht doch auch einfacher:
> 
> Java Code:
> 1
> blubb.setText(x1 + "");​


Auch wenn wir hier nicht beim Schönheitswettbewerb sind, so was geht gar nicht :autsch:


----------



## Marco13 (16. Apr 2009)

faetzminator hat gesagt.:


> Auch wenn wir hier nicht beim Schönheitswettbewerb sind, so was geht gar nicht :autsch:



Oooch... die Leutz bei Sun machen das auch manchmal


----------



## Schandro (16. Apr 2009)

Naja, es gibt viele die das so verwenden, ich manchmal auch. Sieht vllt unschöner aus, ist aber kürzer, was manchmal innerhalb des Quellcodes auch wichtig ist.


----------



## Zaphi67 (16. Apr 2009)

Tomate_Salat hat gesagt.:


> Das geht doch auch einfacher:
> 
> 
> ```
> ...


Also das versteh ich jetzt wirklich nicht mehr. Es geht tatsächlich. Aber warum? Wenn ich also nem Label nen String verpasse kann ich auch integer mit ausgeben, ohne String wird kein integer akzeptiert?


----------



## Zaphi67 (16. Apr 2009)

Ark hat gesagt.:


> Man denkt sich "Hm, Problem mit int, muss String werden", guckt in der API-Dokumentation nach passend klingenden Paketen wie java.lang, findet dort eine Klasse Integer und denkt sich nach den Namenskonventionen eine Methode toString():
> 
> ```
> blubb.setText(Integer.toString(x1));
> ...



Das liegt wohl daran das ich Grafiker bin und eben einfach gut damit zurecht komme. Aber es ist ja nicht so das ich nur GUI's mache. Ich wälze auch jede Menge Bücher und quäle mich durch die mathematischen Konsolenausgaben.


----------



## Zaphi67 (16. Apr 2009)

Schandro hat gesagt.:


> an Ark's Antwort sieht man, wie es bergab geht mit java-forun.org... (nicht auf den inhalt bezogen)
> 
> @TO
> setText von JLabel erwartet einen String als parameter. Umwandeln geht z.b. mit String.valueOf(...)
> ...



Ich habe den Beitrag nachträglich editiert. Die Frage nach dem Font und der Textfarbe wurde nachträglich zugefügt. Ich nehme an das Ark das noch garnicht lesen konnte als er geantwortet hat. Also bitte keine Vorwürfe. Ich bin als Anfänger froh das es dieses Forum gibt und bin dankbar über jeden Tip.
An dieser Stelle auch dir einen Dank.


----------



## Schandro (17. Apr 2009)

Vermutung: Der Operator + "returnt" ein String, wenn mind. eines der beiden Teile String ist. d.h., auf die andere Sache wird .toString() aufgerufen um sie zu einen String zu machen.
Deswegen macht ""+myInt und String.valueOf(myInt) vom ergebniss her so ziemlich dasselbe


----------

