JSpinner Wertausgabe

Status
Nicht offen für weitere Antworten.

klein-odd

Aktives Mitglied
Hallo !
Ich brauche eine ganzzahl von einem JSpinner, für die ich anfangs keine Schranken setzten will.
Der JSpinner soll also auf- oder abwärts fahren und den eingestellten Wert ausgeben.

Mit der Konstruktion :

Code:
spinner  = new JSpinner();
spinner.addPropertyChangeListener(this);

wird ein JSpinner erstellt, den man auch in Aktion sieht.
Nun macht der Listener nichts mehr mit.

MIt folgendem Code
Code:
public void propertyChange(PropertyChanegeEvent e)
{
	JSpinner sender = (JSpinner)e.getSource();
	Oblect val = sender.getValue();
}

kann der Wert abgefragt werden.
Aber.
Wie kann ich das Object zu int umwandeln ?

Der Einfall mit Parsen eines Strings zu Integer ist falsch,
weil das Casten des Objects val zu String text :

Code:
String text = (String)val;

zu folgendem Fehlerkommentar führt:

Exception in thread "main" java.lang.ClassCastException: java.lang.Integer
cannot be cast to java.lang.String
at start.propertyChange(start.java:77)
(die Datei heisst start.java)
Das Casten des Objects zu Integer direkt ist nicht übersetztbar. Eclipse verpasst rote karte.

Wie kann ich die Sache konzipieren, dass ich den Wert irgendwohin kriege ?
Egal ob String oder Integer ?

Schönes Fest jedenfalls, klein-odd[/i]
 

SebiB90

Top Contributor
klein-odd hat gesagt.:
Exception in thread "main" java.lang.ClassCastException: java.lang.Integer
cannot be cast to java.lang.String
at start.propertyChange(start.java:77)
(die Datei heisst start.java)
Das Casten des Objects zu Integer direkt ist nicht übersetztbar. Eclipse verpasst rote karte.
Die Fehlermeldung zeigt doch eindeutig das es ein Integer ist und man es zum Integer daher casten muss um an die Zahl zu kommen. In wie fern verpasst Eclipse da die "rote Karte"??? Führ es doch einfach trotzdem aus.
Code:
Integer zahl = (Integer)val;
 

klein-odd

Aktives Mitglied
Danke,

es hat sich etwas getan.
Die rote Karte bedeutete einen großen roten Kreis mit einem weißem X in der betreffenden Zeile.

Jetzt habe ich keine Fehlermeldungen.
Früher habe ich einen gewichtigen Rechtsschreibfehler begangen.

Die Castingzeile soll so geschrieben werden :
Code:
int zahl = (Integer)val;

Nun ergibt sich die Frage, wie ich den Listener noch checken kann.
Ich wollte die Zahl weiter verwenden und z.B.
in ein JFextField einschreiben oder in einer Nachricht ausgeben


Code:
JTextField textf = new JTextField();

public void propertyChange(PropertyChangeEvent e)
{
    JSpinner sender = (JSpinner)e.getSource();
    Object val = sender.getValue();
    //bis jetzt geht alles
    int zahl = (Integer)val;
    
    textf.setText(""+zahl);//mißlingt immer, als ob der Listener "taub wäre"
    //dasselbe passiert mit evt Nachricht
    JOption.showMessageDialog(null,""+zahl,"JSPINNER",-1,null);
}

Unter Umständen wird der Dialog überhaupt nicht eingeblendet
und sendet zum Anfang seiner "Laufzeitexistenz" nur die Nachricht von diesem Listener.
Das Programm bleibt weiter im Lauf - Eclipse zeigt das rote Viereck zum Ausschalten.

Hängt der Listener mit dem Konstruktor von JDialog irgendwie zusammen ?
Oder zumindest mit setVisible ?
 

klein-odd

Aktives Mitglied
Hey,
ich danke nochmals und
dabei möchte ich mich für den Wirrwar enstchuldigen.

Dass der PropertyChangeListener "taub" war, war ihm zugestanden.
Ich habe den falschen Listener benutzt (aus Sicht der Anwendung falsch).

Nach dem Einsatz von ChangeListener
geht alles.

Noch ein Mal danke, schönes Fest !

klein-odd
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Gibt es sowas (JSpinner)? Java Basics - Anfänger-Themen 9
S 3 Fragen, Verzeichnis, GridLayout psoitionieren, Werte für JSpinner Java Basics - Anfänger-Themen 2
N Operatoren JSpinner und + Error Java Basics - Anfänger-Themen 21
G Probleme mit erneuern des Wertes in JSpinner Java Basics - Anfänger-Themen 9
M jSpinner: nur angezeigte Value auslesen? Java Basics - Anfänger-Themen 3
L Mit ChangeListener JSpinner Loop erstellen Java Basics - Anfänger-Themen 2
F JTree mit JSpinner Java Basics - Anfänger-Themen 2
S JSpinner Min,Max Java Basics - Anfänger-Themen 2
T JSpinner feste Spaltenbreite? Java Basics - Anfänger-Themen 3
B Keylistener auf JSpinner reagiert nicht? Java Basics - Anfänger-Themen 3
M UIManager und JSpinner geht nicht? Java Basics - Anfänger-Themen 2
B JSpinner/Date auslesen Java Basics - Anfänger-Themen 3
M Wie krieg ich ne zahl ausm JSpinner Java Basics - Anfänger-Themen 2
W text in jspinner ausrichten Java Basics - Anfänger-Themen 2
P JSpinner erlaubt Buchstabeneingabe? Java Basics - Anfänger-Themen 6
S JSpinner mit nur positiven Zahlen Java Basics - Anfänger-Themen 2
G JSpinner als JRadioButton? Java Basics - Anfänger-Themen 3
D Startwert JSpinner Java Basics - Anfänger-Themen 4
B 15 Minutentakt bei einem JSpinner einstellen? Java Basics - Anfänger-Themen 6
S JSpinner + Datum Java Basics - Anfänger-Themen 4
T JSpinner und Vector Java Basics - Anfänger-Themen 2
J Combobox füllen mit Wertausgabe von andere Klasse Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben