選択セルの移動
日付(日)の変更 への移動
矢印キー押下げまたはクリックに応じた選択セルの移動は、グリッドの継承した動作で処理されますが、選択された日付を変更する場合は、そのデフォルト動作を変更する必要があります。
カレンダー内の移動を処理するには、グリッドの Click メソッドをオーバーライドします。
Click のような、ユーザーとのやり取りに結び付いているメソッドをオーバーライドする場合は、標準の動作が失われないように、継承したメソッドの呼び出しを含めるのがほとんどです。
カレンダー グリッドの Click メソッドをオーバーライドした例を次に示します。必ず、override 指令を後ろに付けて Click の宣言を TSampleCalendar に追加しておきます。
procedure TSampleCalendar.Click; var TempDay: Integer; begin inherited Click; { remember to call the inherited method! } TempDay := DayNum(Col, Row); { get the day number for the clicked cell } if TempDay <> -1 then Day := TempDay; { change day if valid } end;
void __fastcall TSampleCalendar::Click() { int TempDay = DayNum(Col, Row); // get the day number for the clicked cell if (TempDay != -1) Day = TempDay; // change day if valid }