home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 2000 May / PCP163A.iso / handson / files / copydelp.exe / dt.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1999-12-05  |  1.7 KB  |  74 lines

  1. unit dt;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   ComCtrls, ToolWin, Grids, Calendar, StdCtrls, ExtCtrls;
  8.  
  9. type
  10.   TCalendarForm = class(TForm)
  11.     Calendar1: TCalendar;
  12.     DateTimePicker1: TDateTimePicker;
  13.     Panel1: TPanel;
  14.     OKBtn: TButton;
  15.     CancelBtn: TButton;
  16.     procedure DateTimePicker1Change(Sender: TObject);
  17.     procedure FormCreate(Sender: TObject);
  18.     procedure Calendar1Change(Sender: TObject);
  19.     procedure OKBtnClick(Sender: TObject);
  20.     procedure CancelBtnClick(Sender: TObject);
  21.   private
  22.     { Private declarations }
  23.   public
  24.     { Public declarations }
  25.     procedure SetCalendarDate(D : TDateTime);
  26.   end;
  27.  
  28. var
  29.   CalendarForm: TCalendarForm;
  30.  
  31. implementation
  32.  
  33. {$R *.DFM}
  34. procedure TCalendarForm.SetCalendarDate(D : TDateTime);
  35. var
  36.    Year, Month, Day : Word;
  37. begin
  38.   DecodeDate(D, Year, Month, Day);
  39.   Calendar1.Year := Year;
  40.   Calendar1.Month := Month;
  41.   Calendar1.Day := Day;
  42. end;
  43.  
  44. procedure TCalendarForm.DateTimePicker1Change(Sender: TObject);
  45. begin
  46.   SetCalendarDate(DateTimePicker1.Date);
  47. end;
  48.  
  49. procedure TCalendarForm.FormCreate(Sender: TObject);
  50. begin
  51.    DateTimePicker1.Align := alTop;
  52.    Calendar1.Align := alClient;
  53. end;
  54.  
  55. procedure TCalendarForm.Calendar1Change(Sender: TObject);
  56. var
  57.    Year, Month, Day : Word;
  58. begin
  59.    DecodeDate(DateTimePicker1.Date, Year, Month, Day);
  60.    DateTimePicker1.Date := EncodeDate(Year, Month, Calendar1.Day);
  61. end;
  62.  
  63. procedure TCalendarForm.OKBtnClick(Sender: TObject);
  64. begin
  65.    ModalResult := mrOK;  
  66. end;
  67.  
  68. procedure TCalendarForm.CancelBtnClick(Sender: TObject);
  69. begin
  70.    ModalResult := mrCancel;
  71. end;
  72.  
  73. end.
  74.