Die Markierung bewegen
Nach oben zu Durch die Tage navigieren
Im geerbten Verhalten eines Gitters wird die Markierung bewegt, wenn eine Pfeiltaste gedrückt oder mit der Maus auf eine Zelle geklickt wird. Dieses Standardverhalten muss für den Kalender geändert werden.
Um Bewegungen innerhalb des Kalenders zu bearbeiten, überschreiben Sie die Methode Click des Gitters.
Beim Überschreiben einer Methode, die auf Benutzeraktionen reagiert (wie etwa Click), ist fast immer ein Aufruf der geerbten Methode erforderlich. Dadurch ist sichergestellt, dass das geerbte Verhalten nicht verloren geht.
Nachstehend sehen Sie die überschriebene Methode Click für das Kalendergitter. Vergessen Sie nicht, der Deklaration von TSampleCalendar die Deklaration von Click (einschließlich der Direktive override) hinzuzufügen.
procedure TSampleCalendar.Click;
var
TempDay: Integer;
begin
inherited Click; { Aufruf der geerbten Methode nicht vergessen! }
TempDay := DayNum(Col, Row); { Tagesnummer für die Zelle ermitteln }
if TempDay <> -1 then Day := TempDay { Wenn gültig, Tag ändern }
end;
void __fastcall TSampleCalendar::Click()
{
int TempDay = DayNum(Col, Row);// Tagesnummer der angeklickten Zelle ermitteln
if (TempDay != -1) Day = TempDay; // Tag wechseln, wenn gültig
}