Wenn ich einen IntegerSpinner leer lasse und das Feld verlasse, bekomme ich eine NullPointerException, da logischer Weise nichts im Spinner steht.
Ich möchte den Spinner so einstellen, dass er mindestens eine Zahl beinhalten muss und maximal zweistellig sein darf. Ich meine damit nicht den Mindest- oder Maximalwert. Beispiel:
Ich hatte schon mal sehr lange dieses Problem. Nun möchte ich für dieses Problem ebenfalls eine eigene Fehlermeldung ausgeben lassen oder einfach, wie oben beschrieben, verhindern, dass der Spinner leer bleibt oder zu viele Zahlen enthält.
Mit regex kann ich schon mal Folgendes abfragen, sodass der Spinner eine rote Farbe bekommt (als Hinweis), wenn ein non-Integer eingegeben wurde oder zu wenige bzw. zu viele Zahlen eingegeben wurden:
Jedoch kann ich damit nicht meinen Plan (siehe oben) umsetzen, da
nicht "greift" - ich kann den Spinner trotzdem verlassen.
Ich möchte den Spinner so einstellen, dass er mindestens eine Zahl beinhalten muss und maximal zweistellig sein darf. Ich meine damit nicht den Mindest- oder Maximalwert. Beispiel:
Java:
"" - leer; so ists falsch
"1" - nicht leer; so ists richtig
"11" - nicht leer; so ists richtig
"111" - mehr als zwei Zahlen; so ists falsch
Ich hatte schon mal sehr lange dieses Problem. Nun möchte ich für dieses Problem ebenfalls eine eigene Fehlermeldung ausgeben lassen oder einfach, wie oben beschrieben, verhindern, dass der Spinner leer bleibt oder zu viele Zahlen enthält.
Mit regex kann ich schon mal Folgendes abfragen, sodass der Spinner eine rote Farbe bekommt (als Hinweis), wenn ein non-Integer eingegeben wurde oder zu wenige bzw. zu viele Zahlen eingegeben wurden:
Java:
if (!options_Spinner_StartInterval_seconds.getEditor().getText().matches("^-?\\d+$") || !options_Spinner_StartInterval_seconds.getEditor().getText().matches("^-?\\d.{0,2}$"))
options_Spinner_StartInterval_seconds.setStyle("-fx-focus-color: #f00;");
Jedoch kann ich damit nicht meinen Plan (siehe oben) umsetzen, da
Code:
spinner.requestFocus()
nicht "greift" - ich kann den Spinner trotzdem verlassen.