Combobox mit Zeitwerten

Status
Nicht offen für weitere Antworten.
G

Gast

Gast
Moin,

ich würde gern Comboboxes mit Datumsausgaben bzw. Uhrzeitausgaben füllen.


Habe so angefangen:

Code:
import java.text.DateFormat; 
import java.util.*;
 import static java.text.DateFormat.*;

 public class DateTimeInstance { 



Calendar cal = Calendar.getInstance();

// DATUM SHORT
 DateFormat df  tf;

 df = DateFormat.getDateInstance( SHORT); 
tf = DateFormat.getTimeInstance( SHORT);


Wenn ich nun das Datum von morgen, übermoren etc. dahinter hängen möchte,
wie mache ich das am Geschicktesten ?

Oder sollte man dazu kein DateFormat verwenden ??

Vielen Dank
 
S

SlaterB

Gast
was willst du denn in deine ComboBox reinschreiben?
einfache Strings? dann formatiere cal,
für morgen addiere einen Tag auf cal und formatiere wieder die Zeit,
so bekommst du Strings, die du einfügen kannst,

oder willst du andere höhere Objekte in die ComboBox einfügen?
 
G

Gast

Gast
Puh, will drei Combos machen

Tag // Monat // Jahr

Funktion für Tag ist schon fertig.

Beim Monat hätte ich eigentlich gern die Strings Januar, Februar...

Hier mal meine Funktion:

Code:
/**
     * Liefert alle Monate , angefangen vom aktuellen Monat
     * @return
     */
     public int[] getMonth(){

		int[] Monate = new int[11];
		Monate[0] =	cal.get(Calendar.MONTH)+1;
		for (int i = 1 ; i < 12 ; i ++ )
		{
		Monate[i] =  cal.get(Calendar.MONTH)+ 1 + i ;
		
		}
		
       return Monate;
	}

Krieg ich das irgendwie konvertiert...?
 
S

SlaterB

Gast
wenn du in eine JComboBox die Strings Januar, Februar... einfügen willst, dann tue dies:

box.add("Januar");
...

was hhat dies nun mit Calendar zu tun?
 

JPKI

Top Contributor
Vielleicht ist ja das da hier was für dich.
Wenn du allerdings gezwungen bist, eine JComboBox zu nehmen, würde ich die formatierten Calendars als Strings hinzufügen.
 
G

Guest

Gast
Ja , wieso kann man eigentlich keine Integer Werte in eine Combobox füllen.
JSpinner scheint da auch nicht zu klappen.

Da bleibt mir wohl nichts anderes übrig als doch zu parsen und einen String Array zu übergeben.


Sinn des Ganzes : In den Comboboxen sollen immer das aktuelle Datum / Uhrzeit oben stehen und
eigentlich soll wenn man Februar anklickt eigentlich bei den Tagen auch nur 28 bzw. 29
Tage auswählbar sein.
 
G

Gast

Gast
JSpinner tag;
SpinnerListModel model;

In der Methode:

model = new SpinnerListModel( date.getDay() );
tag = new JSpinner(model);

--wobei date.getDay() ein Integer Array liefert.

Mit einem Strin Array geht das ....
 
G

Gast

Gast
Du meinst so:

SpinnerDateModel model = new SpinnerDateModel();
JSpinner spinner = new JSpinner( model );
Date value = model.getDate();

nur möchte ich meine eigene Methode an den Spinner übergeben.

Damit scheint es auch net zu klappen :

model = new SpinnerNumberModel( date.getDay() );

noch mal was :

Formatierung:

df = new SimpleDateFormat("MMMM");

Und damit bekomme ich den Dezember als Ausgabe:
System.out.println(df.format(cal.getTime()));

Wie bekomme ich denn die restlichen Monate ?
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben