2

TcxDateNavigator、週末(土曜日、日曜日)を別の文字色(赤)でマークすることはできますか?

TMS にはこの機能が実装されていますが、この DevExpress コンポーネントでそれを見つけることができないようです。

4

1 に答える 1

4

については、たとえば次のようにイベント ハンドラcxDateNavigatorを使用できます。OnCustomDrawDayNumber

uses
  DateUtils, cxDateUtils;

procedure TForm60.cxDateNavigator1CustomDrawDayNumber(Sender: TObject; ACanvas: TcxCanvas; AViewInfo: TcxSchedulerDateNavigatorDayNumberViewInfo; var ADone: Boolean);
begin
  if DayOfTheWeek(AViewInfo.Date) in [DaySaturday, DaySunday] then
  begin
    AViewInfo.Bold := True;
    ACanvas.Font.Color := clGreen;
    ACanvas.Brush.Color := clYellow;
  end;
end;

ここに画像の説明を入力

通常は休日を示すため、週末に赤を使用することはお勧めしません。

また、マウスで指している日付を知りたい場合。イベントを実装できますOnMouseMove:

procedure TForm60.cxDateNavigator1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
var
  dt: TDateTime;
begin
  dt := TcxDateNavigator(Sender).HitTest.Time;
  if dt = NullDate then
    Caption := 'You are pointing outside the calendar area'
  else
    Caption := 'You are pointing at ' + FormatDateTime(FormatSettings.LongDateFormat, dt);

end;
于 2015-04-07T05:50:12.090 に答える