DojoCalendar

Mit dem Widget 'DojoCalendar' wird ein Kalender erstellt.

Der Benutzer kann das Datum mit einem Klick festlegen, wie hier dargestellt:
Dojo-Kalender
Der Benutzer kann den Monat ändern, indem er auf den oberen linken bzw. rechten Pfeil klickt. Alternativ dazu kann der Benutzer auf den oberen mittleren Pfeil klicken und dann auf einen Eintrag im Monatsauswahlfeld, wie hier dargestellt:
Dojo-Kalender

Der Benutzer kann das Jahr ändern, indem er auf das linke oder rechte Jahr am unteren Rand des Kalenders klickt.

Unterstützte Eigenschaft:
value
Ein Datumswert, der ein Kalenderdatum darstellt.

Sie können das Datum abrufen oder festlegen. Der Standardwert ist das aktuelle Datum.

Unterstützte Funktion:
isSelectorOpen
Gibt an, ob das Monatsauswahlfeld geöffnet ist.
Der Funktionsprototyp lautet wie folgt:
function isSelectorOpen() returns (boolean);

Weitere unterstützte Eigenschaften und Funktionen sind in 'Widgeteigenschaften und -funktionen' sowie in 'Widgetstile' beschrieben.

Beispiel

Sie können verschiedene Aspekte des Kalenders testen, indem Sie mit dem folgenden Code arbeiten, der darüber hinaus die Verwendung des EGL-Job-Schedulers veranschaulicht:
package myPkg;

import com.ibm.egl.rui.widgets.GridLayout;
import com.ibm.egl.rui.widgets.GridLayoutData;
import dojo.widgets.DojoCalendar;
import dojo.widgets.DojoButton;
import egl.javascript.Job; 

handler MyHandler type RUIhandler {
   initialUI = [ ui ], onConstructionFunction = start, 
   cssFile="css/MyRichUIProject.css", title="MyHandler"}

   ui GridLayout{ columns = 3, rows = 4, cellPadding = 4, 
                  children = [ myButton, myCalendar ] };

   myCalendar DojoCalendar{ layoutData = new GridLayoutData{ row = 2, column = 2 }, 
                            value = DateTimeLib.currentDate() };

   myButton DojoButton{ layoutData = new GridLayoutData{ row = 4, column = 2 }, 
                            text = "Is the month selector open?", 
                            onClick ::= myEventHandler};

   doThis Job{runFunction = myRunFunction};
	
   function start()  
	     strLib.defaultDateFormat = "yyyy/MM/dd";
   end

   function myEventHandler( e event in)
      doThis.repeat(1000);
      myCalendar.value = "2012/04/08";
   end

   function myRunFunction()
      isListBoxOpen Boolean = myCalendar.isSelectorOpen();
      writestdout ("The selector is open:  " + isListBoxOpen);

      if (isListBoxOpen)
         doThis.cancel();
      end

      writestdout ("The date is " + myCalendar.value);
   end
end

Feedback