Ulfmann Geschrieben 24. April 2009 Geschrieben 24. April 2009 Hallo, ich such grad nach einer Variante, wie man die Anzeige eines JSpinners (bekommt ein SpinnerDataModel) zurücksetzen kann. Anwendungsbeispiel: Der Benutzer tippt in Textfeldern rum und verstellt das Datum im JSpinner, verlässt jetzt aber die Ansicht und ruft sie wieder auf. Textfelder zu bereiningen, ist einfach, aber wie ist das beim JSpinner? Der behällt den verstellten Wert. Meine erste Idee war quick & dirty, in dem mein dateSpinner mit dateSpinner.setModel(new SpinnerDateModel()); einfach ein neues Model kriegt. Weiß jemand einen eleganteren Weg ? Zitieren
Dragon8 Geschrieben 24. April 2009 Geschrieben 24. April 2009 Also ich finde die Idee mit dem neuen Model jetzt eigentlich nicht unbedingt unelegant. Das Model ist ja sogesehen die Datenhaltung der Komponente, und in dem du ein neuen Model übergibst, hast du dann also komplett alle Werte wieder auf dem Ausgangsstand. Ansonsten kannst du deinen JSpinner ja mit der Methode JSpinner#setValue(Object()) auf den Defaultwert zurück setzen. Zitieren
Ulfmann Geschrieben 24. April 2009 Autor Geschrieben 24. April 2009 Ja genau, mit der setValue-Methode hatte ich auch schon geliebäugelt, aber da bin ich nun wieder zu dämlich, ihr nen gültigen Parameter mitzugeben. Ich wollte mich damit auch nicht lange aufhalten, dann lass ich das mit dem DateSpinnerModel. Danke aber! Zitieren
Dragon8 Geschrieben 24. April 2009 Geschrieben 24. April 2009 Auch wenn das jetzt so bleiben sollte, den Wert des Spinners kannst du im Programmcode verändern, in dem du der setValue() - Methode ein Date Object übergibst, in dem das Datum gespeichert ist, auf welches du den Spinner stellen willst. Wenn du also den Spinner jedesmal nur wieder au das aktuelle Datum setzen möchtest, müsste folgendes reichen: jspinner.setValue(new Date()); Zitieren
Ulfmann Geschrieben 24. April 2009 Autor Geschrieben 24. April 2009 Sowas wollte ich haben, danke sehr. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.