SpinnerDateModel NUR Uhrzeit ausgeben

drei1padsvb

Aktives Mitglied
Hallo,

ich sitze gerade an einem kleinen Projekt, in dem durch ein SpinnerDateModel eine Uhrzeit angegeben werden kann:

Java:
    final SpinnerDateModel abflugSpinner = new SpinnerDateModel(new Date(), null, null, Calendar.HOUR_OF_DAY);
    JSpinner spinner = new JSpinner(abflugSpinner);
    constraints.gridx = 1;
    constraints.gridy = 2;
    spinner.setEditor(new JSpinner.DateEditor(spinner, "HH:mm"));
    mainPanel.add(spinner, constraints);

Durch
Java:
System.out.println(abflugSpinner.getDate());
lasse ich mir diese Eingabe ausgeben.
Allerding hat die Ausgabe das Format: Wed Nov 30 13:12:21 CET 2011
Ist es möglich, dass nur die Stunden und Minuten ausgegeben werden? Also 13:12

Viele Dank schonmal
 
das geht mit nem dateformat


private DateFormat uhrformatter;
uhrformatter = new SimpleDateFormat("HH:mm:ss");
uhrformatter.format(new Date())


sowas in die richtung sollte gehen
 
Hallo,

hab den Code mal ausprobiert, es wird wie beabsichtigt nur die Uhrzeit angezeigt:

Java:
    public static void main( String[] args ) {
        final SpinnerDateModel abflugSpinner = new SpinnerDateModel( new Date(), null, null, Calendar.HOUR_OF_DAY );
        JSpinner spinner = new JSpinner( abflugSpinner );
        spinner.setEditor( new JSpinner.DateEditor( spinner, "HH:mm" ) );
        JOptionPane.showMessageDialog( null, spinner, "title", JOptionPane.INFORMATION_MESSAGE );
    }

Ach so, jetzt hab ichs auch gesehen, getDate() liefert natürlich ein unformatiertes Datum zurück, mit dem Vorschlag von stikio kann das entsprechend aufbereitet werden.
 
Zuletzt bearbeitet:
Erstmal Danke für eure Antworten.

Ich krieg das aber leider noch nicht so richtig hin (Anfänger halt..)

Wie genau muss ich das in meinen Code einfügen?
So wie ich das gemacht habe, klappt es noch nicht.

Und ruf ich dann den Wert auch wieder mit
System.out.println(abflugSpinner.getDate());
auf?
 
Du musst auf das Date-Objekt noch den Formatter von stikio anwenden. Von diesem bekommst Du die Uhrzeit als String zurück und kannst Sie dann per System.out ausgeben oder sonst wo anzeigen.
 
sollte auch einfach so funktionieren ( tuts bei mir zumindest ^^ )

Java:
System.out.println( "" + new SimpleDateFormat( "HH:mm:ss" ).format( new Date() ) );
 

Zurück
Oben