亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? datewin.pas

?? 一個很漂亮的農歷控件
?? PAS
字號:
unit DateWin;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, StdCtrls, ComCtrls, DateUtils;

type
  TFRM_Date = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    day1: TLabel;
    Cnday: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Bevel1: TBevel;
    Bevel2: TBevel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Shape2: TShape;
    UpDown1: TUpDown;
    UpDown2: TUpDown;
    Label20: TLabel;
    StaticText1: TStaticText;
    Label21: TLabel;
    Label22: TLabel;
    Image1: TImage;
    Shape1: TShape;
    //CnDayClick
    procedure CnDayClick(Sender: TObject);
    procedure CHnDayClick(Sender: TObject);
    procedure Label1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure UpDown1Click(Sender: TObject; Button: TUDBtnType);
    procedure Label17Click(Sender: TObject);
    procedure UpDown2Click(Sender: TObject; Button: TUDBtnType);
    procedure Label5Click(Sender: TObject);
    procedure FormDeactivate(Sender: TObject);
    procedure CnDayMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure ChnDateMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure StaticText1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormPaint(Sender: TObject);

  private
    { Private declarations }
    procedure LoadLAB;
    procedure DateChange(MyTime: TDateTime);
    procedure OK;
  public
    { Public declarations }
    FPicture_AlphaBlend: Byte;
    FPicture: TbitMap;
    NDate: Tdate;
    YearEdit, MonthEdit, DayEdit: TEdit;
    ChDateLabel: TLabel;

    procedure ShowDateWin(YearEdit1, MonthEdit1, DayEdit1: TEdit; {ChDateLabel1: TLabel;} HostControl: TControl; Bmp: TBitMap = nil; iAlphaBlend: Byte = 150);
  end;

var
  FRM_Date: TFRM_Date;
  CnDate: array[1..37] of TLabel;
  ChnDate: array[1..37] of TLabel;
  NYear, NMonth, NDay: Word;
  MHostControl: TControl;
implementation

uses DateCn, ChnCalendar;

{$R *.DFM}



function FormExists(FORM_NAME: string): BOOLEAN;
begin
  if Application.FindComponent(FORM_NAME) = nil then
    RESULT := FALSE
  else
    RESULT := TRUE;
end;

function DayOfMonth(Year, Month: Integer): integer; overload;
begin
  try
    Result := MonthDays[IsLeapYear(Year), Month];
  except
    Result := 0;
  end;
end;

function DayOfMonth(Dates: TDateTime): integer; overload;
var
  Year, Month, Day, Hour: Word;

begin
  DecodeDate(Dates, Year, Month, day);
  Result := MonthDays[IsLeapYear(Year), Month];
end;

function DaysOfMonth(Dates: TDateTime): Integer;
begin
  Result := DayOfMonth(YearOf(Dates), MonthOf(Dates));
end;


function SetDateTime(NYear, NMonth, NDay: Word): TDate;
var
  MyDay: Word;
begin
  MyDay := DayOfMonth(NYear, NMonth);
  if MyDay < NDay then
    NDay := MyDay;
  Result := EncodeDate(NYear, NMonth, NDay);

end;


procedure TFRM_Date.Label1Click(Sender: TObject);
begin
  //  Self.Close ;
  UpDown1.Visible := true;
  UpDown2.Visible := false;

end;

procedure TFRM_Date.LoadLAB;
var
  i: integer;
begin

  for i := 1 to 37 do
  begin
    CnDate[i] := TLabel.Create(self);
    CnDate[i].parent := self;
    ChnDate[i] := TLabel.Create(self);
    ChnDate[i].parent := self;

    CnDate[i].OnClick := CnDayClick;
    CnDate[i].OnMouseDown := CnDayMouseDown;
    ChnDate[i].OnClick := ChnDayClick;
    ChnDate[i].OnMouseDown := ChnDateMouseDown;
    CnDate[i].AutoSize := false;
    ChnDate[i].AutoSize := false;
    CnDate[i].Width := day1.Width;
    ChnDate[i].Width := Cnday.Width;
    CnDate[i].Height := day1.Height;
    ChnDate[i].Height := Cnday.Height;
    CnDate[i].Alignment := day1.Alignment;
    ChnDate[i].Alignment := Cnday.Alignment;
    CnDate[i].Layout := day1.Layout;
    ChnDate[i].Layout := Cnday.Layout;

    if i = 1 then
    begin
      CnDate[i].Left := day1.Left;
      CnDate[i].Top := day1.Top;
      ChnDate[i].Left := Cnday.Left;
      ChnDate[i].Top := Cnday.Top;

    end
    else
    begin

      if ((i - 1) / 7) = ((i - 1) div 7) then
      begin
        CnDate[i].Top := CnDate[i - 1].Top + 32;
        CnDate[i].Left := day1.Left;
        ChnDate[i].Top := ChnDate[i - 1].Top + 32;
        ChnDate[i].Left := Cnday.Left;

      end
      else
      begin

        CnDate[i].Top := CnDate[i - 1].Top;
        CnDate[i].Left := CnDate[i - 1].Left + 42;
        ChnDate[i].Top := ChnDate[i - 1].Top;
        ChnDate[i].Left := ChnDate[i - 1].Left + 42;

      end;
    end;
    CnDate[i].Font := day1.Font;
    ChnDate[i].Font := Cnday.Font;
    CnDate[i].Font.Color := clBlack;
    CnDate[i].AutoSize := false;
    ChnDate[i].AutoSize := false;
    CnDate[i].Transparent := true;
    ChnDate[i].Transparent := true;

      //        CnDate[i].Caption :='22';
      //        CnDate[i].Visible  :=true;
      //        ChnDate[i].Caption :='初一';

  end;

end;


procedure TFRM_Date.DateChange(MyTime: TDateTime);
var
  i, S: integer;
  StarNo: integer;
  Present: TDateTime;
  Year, Month, Day, Hour: Word;

begin
  //  Label6.Caption :=datetostr(MyTime);
  //  Label14.Caption :='今天:'+datetostr(date);
  //  MyDates:=MyTime;
  Label20.Caption := IntToStr(DateUtils.YearOf(Mytime));
  Label17.Caption := IntToStr(DateUtils.MonthOf(Mytime));
  Label16.Caption := Label17.Caption;
  Label1.Caption := IntToStr(DateUtils.YearOf(Mytime));
  Label21.Caption := CnanimalOfYear(Mytime);


  for i := 1 to 37 do
  begin
    CnDate[i].Visible := false;
    ChnDate[i].Visible := false;
    ChnDate[i].Font.Color := clBlack;
    CnDate[i].Font.Color := clBlack;
    CnDate[i].Font.Size := 11;
    CnDate[i].Color := self.Color;
    ChnDate[i].Color := self.Color;
  end;

  DecodeDate(MyTime, Year, Month, Day);
  Present := EncodeDate(Year, Month, 1);
  StarNo := dayofweek(Present);
  s := starno + DayOfMonth(Present) - 1;
  try
    for i := StarNo to s do
    begin
      Present := EncodeDate(Year, Month, i - StarNo + 1);
      CnDate[i].Caption := IntToStr(i - StarNo + 1);
      CnDate[i].Tag := i - StarNo + 1;
      ChnDate[i].Tag := CnDate[i].Tag;
      ChnDate[i].Caption := CnDayOfDate(Present);
      if ChnDate[i].Caption = '初一' then
      begin
        ChnDate[i].Caption := CnMonthOfDate(Present);
        ChnDate[i].Font.Color := clRed;
      end
      else
        ChnDate[i].Font.Color := Cnday.Font.Color;
      if length(Holiday(MyTime, i - StarNo + 1)) > 3 then
      begin
        ChnDate[i].Caption := Holiday(MyTime, i - StarNo + 1);
        ChnDate[i].Font.Color := $000080FF;
      end;
      if DateCn.GetLunarHolDay(Present) <> '' then
      begin
        ChnDate[i].Caption := GetLunarHolDay(Present);
        ChnDate[i].Font.Color := $00FF5353;
      end;
      if DateCn.CnDayOfDateJr(Present) <> '' then
      begin
        ChnDate[i].Caption := CnDayOfDateJr(Present);
        ChnDate[i].Font.Color := $000080FF;
      end;
      if i - StarNo + 1 = day then
      begin

        Shape2.Left := CnDate[i].left - 1;
        Shape2.Top := CnDate[i].top + 1;
        Label22.Caption := Constellation(Present, day);
      end;


      CnDate[i].Visible := true;
      ChnDate[i].Visible := true;

    end;

  except
    on EConvertError do
    begin
        //   showmessage(inttostr(i));
      exit;
    end
  else exit;
  end;

end;


procedure TFRM_Date.FormCreate(Sender: TObject);
begin
  LoadLAB;
  NDate := Date;

end;

procedure TFRM_Date.FormShow(Sender: TObject);
begin
  DecodeDate(NDate, NYear, NMonth, NDay);
  UpDown1.Position := NYear;
  UpDown2.Position := NMonth;

  DateChange(NDate);
end;

procedure TFRM_Date.CHnDayClick(Sender: TObject);
begin
  Label5Click(nil);
  Nday := (sender as TLabel).Tag;
  OK;
end;

procedure TFRM_Date.CnDayClick(Sender: TObject);
begin
  Label5Click(nil);
  Nday := (sender as TLabel).Tag;
  OK;

end;

procedure TFRM_Date.UpDown1Click(Sender: TObject; Button: TUDBtnType);
var
  Present: TDate;
begin
  NYear := UpDown1.Position;
  Present := SetDateTime(NYear, NMonth, NDay);
  DateChange(Present);
end;

procedure TFRM_Date.Label17Click(Sender: TObject);
begin
  UpDown2.Visible := true;
  UpDown1.Visible := false;
end;

procedure TFRM_Date.UpDown2Click(Sender: TObject; Button: TUDBtnType);
var
  Present: TDate;
begin
  NMonth := UpDown2.Position;
  Present := SetDateTime(NYear, NMonth, NDay);
  DateChange(Present);

end;

procedure TFRM_Date.Label5Click(Sender: TObject);
begin
  UpDown2.Visible := False;
  UpDown1.Visible := false;

end;

procedure TFRM_Date.FormDeactivate(Sender: TObject);
begin
  Self.Close;
end;

procedure TFRM_Date.ChnDateMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Shape2.Left := (sender as TLabel).left;
  Shape2.Top := (sender as TLabel).top - 16;

end;

procedure TFRM_Date.CnDayMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Shape2.Left := (sender as TLabel).left - 1;
  Shape2.Top := (sender as TLabel).top + 1;

end;

procedure TFRM_Date.StaticText1Click(Sender: TObject);
begin
  NDate := Date;
  FormShow(nil);
end;

procedure TFRM_Date.OK;
begin
  NDate := EncodeDate(NYear, NMonth, NDay);
//  TChnCalendar(MHostControl).IsInit := False;
  TChnCalendar(MHostControl).DateTime := NDate;
  Close;
end;

procedure TFRM_Date.ShowDateWin(YearEdit1, MonthEdit1, DayEdit1: TEdit;
  HostControl: TControl; Bmp: TBitMap = nil; iAlphaBlend: Byte = 150);
var
  P: TPoint;
  FBackPicture: TbitMap;
begin
{  if not FormExists('FRM_Date') then
    Self := TFRM_Date.Create(Application);
  YearEdit := YearEdit1;
  MonthEdit := MonthEdit1;
  DayEdit := DayEdit1;
//  ChDateLabel := ChDateLabel1;
  MHostControl := HostControl;

  YearEdit.Text := IntToStr(StrTOIntDef(YearEdit.Text, YearOf(Date)));
  MonthEdit.Text := IntToStr(StrTOIntDef(MonthEdit.Text, MonthOf(Date)));
  DayEdit.Text := IntToStr(StrTOIntDef(DayEdit.Text, DayOfMonth(Date)));

  if (StrToInt(YearEdit.Text) > 2050) or (StrToInt(YearEdit.Text) < 1901) then
    YearEdit.Text := IntToStr(YearOf(Date));

  if (StrToInt(MonthEdit.Text) > 12) or (StrToInt(MonthEdit.Text) < 1) then
    MonthEdit.Text := IntToStr(MonthOf(Date));

  if StrToInt(DayEdit.Text) > DayOfMonth(StrToInt(YearEdit.Text), StrToInt(MonthEdit.Text)) then
    DayEdit.Text := IntToStr(DayOfMonth(StrToInt(YearEdit.Text), StrToInt(MonthEdit.Text)));

  NDate := EncodeDate(StrToInt(YearEdit.text), StrToInt(MonthEdit.text), StrToInt(DayEdit.text));
  AdjustDropDownForm(Self, HostControl);

  Image1.Picture.Bitmap.Assign(Bmp);
  Label16.Visible := Image1.Picture.Graphic = nil;
  Label20.Visible := Image1.Picture.Graphic = nil;
  if Image1.Picture.Graphic <> nil then
  begin
    FBackPicture := TbitMap.Create;
    FBackPicture.Width := Image1.Width ;
    FBackPicture.Height := Image1.Height;
    FBackPicture.Canvas.Brush.Color := Color;
    FBackPicture.Canvas.FillRect(RECT(0, 0, FBackPicture.Width,
      FBackPicture.Height));

    P := Point((FBackPicture.Width - bmp.Width) div 2,
      (FBackPicture.Height - bmp.Height) div 2);
    BmpAlphaBlend(FBackPicture, Bmp, P, iAlphaBlend);
    Image1.Canvas.Draw(0, 0, FBackPicture);
    FBackPicture.free;

  end;
  Self.Show;  }
end;

procedure TFRM_Date.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Application.RemoveComponent(Self);
  Self := nil;
  Self.Free;

end;

procedure TFRM_Date.FormPaint(Sender: TObject);
var
  P: TPoint;
  FBackPicture: TbitMap;
begin
//
                         {
  if not FPicture.Empty then
  begin
    FBackPicture := TbitMap.Create;
    FBackPicture.Width := ClientWidth;
    FBackPicture.Height := ClientHeight;
    FBackPicture.Canvas.Brush.Color := Color;
    FBackPicture.Canvas.FillRect(RECT(0, 0, FBackPicture.Width,
      FBackPicture.Height));

    P := Point((FBackPicture.Width - FPicture.Width) div 2,
      (FBackPicture.Height - FPicture.Height) div 2);
    BmpAlphaBlend(FBackPicture, FPicture, P, FPicture_AlphaBlend);
    Canvas.Draw(0, 0, FBackPicture);
    FBackPicture.free;
  end;
  }
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区成人| 午夜精品影院在线观看| 3d动漫精品啪啪1区2区免费| 欧美在线免费观看视频| 91在线一区二区| 成人黄色网址在线观看| 国产麻豆精品视频| 高清shemale亚洲人妖| 成人午夜在线播放| 91麻豆福利精品推荐| 91视频.com| 欧美日韩免费观看一区二区三区| 欧美日韩午夜精品| 日韩午夜在线观看视频| 日韩欧美色综合| 久久久99久久| 欧美国产综合色视频| 亚洲欧美一区二区久久| 亚洲国产一区二区三区| 日本va欧美va欧美va精品| 麻豆精品蜜桃视频网站| 成人一级黄色片| 在线免费观看日韩欧美| 在线播放/欧美激情| 欧美一级精品大片| 久久久一区二区| 亚洲欧美成人一区二区三区| 亚洲一区二区在线播放相泽| 日韩高清欧美激情| 成人性生交大合| 欧美精品xxxxbbbb| 国产精品区一区二区三区| 亚洲一本大道在线| 极品少妇一区二区三区精品视频| 国产成人aaa| 欧美影院精品一区| 国产网站一区二区三区| 亚洲成人综合视频| 丁香婷婷综合激情五月色| 欧美群妇大交群的观看方式| 久久久精品国产免大香伊| 日韩一区二区免费视频| 综合网在线视频| 美女视频第一区二区三区免费观看网站 | 五月天视频一区| 成人午夜又粗又硬又大| 欧美军同video69gay| 中文字幕av资源一区| 午夜精品aaa| 99视频在线精品| 久久综合av免费| 三级久久三级久久久| 95精品视频在线| 国产欧美一区二区三区鸳鸯浴 | 色婷婷久久久综合中文字幕| 欧美肥大bbwbbw高潮| 亚洲欧美一区二区在线观看| 久久精品国产亚洲一区二区三区| 色又黄又爽网站www久久| 中文字幕免费在线观看视频一区| 日韩成人伦理电影在线观看| 欧美视频在线观看一区二区| 中文字幕日韩欧美一区二区三区| 久久精品国产久精国产爱| 精品视频一区二区三区免费| 国产精品久久久久久久久久免费看 | 欧美一区二区三区免费大片| 亚洲另类在线视频| 色综合久久久久综合| 国产精品国产精品国产专区不蜜| 黄网站免费久久| 精品久久久久一区二区国产| 日韩综合在线视频| 91精品国产色综合久久久蜜香臀| 亚洲午夜精品网| 精品视频1区2区| 日本女人一区二区三区| 欧美日韩一区二区在线观看视频| 夜夜操天天操亚洲| 欧美日韩一区久久| 蜜桃av噜噜一区二区三区小说| 欧美午夜电影一区| 日韩电影在线一区| 欧美r级在线观看| 国产成人一区在线| 国产欧美日韩视频在线观看| 国产电影精品久久禁18| 亚洲国产精品国自产拍av| 国产成人无遮挡在线视频| 国产欧美视频一区二区| 色综合夜色一区| 亚洲福中文字幕伊人影院| 欧美酷刑日本凌虐凌虐| 久久99在线观看| 久久亚区不卡日本| av亚洲精华国产精华精华| 亚洲色图欧洲色图婷婷| 欧美性淫爽ww久久久久无| 日韩有码一区二区三区| 久久久久久久久久久久久女国产乱| 日韩国产欧美在线视频| 日韩午夜av电影| 国产91清纯白嫩初高中在线观看 | 波多野结衣中文字幕一区| 亚洲精品一二三| 91麻豆精品国产自产在线观看一区 | 亚洲国产成人精品视频| 欧美人与禽zozo性伦| 国产久卡久卡久卡久卡视频精品| **性色生活片久久毛片| 在线不卡免费av| 国产精品456露脸| 亚洲免费在线电影| 91精品国产全国免费观看| 成人av资源在线观看| 天使萌一区二区三区免费观看| 久久久美女艺术照精彩视频福利播放| a4yy欧美一区二区三区| 久久精品国产免费看久久精品| 亚洲欧洲精品一区二区三区 | 国产区在线观看成人精品| 91精品国产免费久久综合| 国产黄色精品视频| 亚洲超碰97人人做人人爱| 最新热久久免费视频| 久久夜色精品国产噜噜av| 欧美肥妇毛茸茸| 色综合久久久久久久久| 国产精品一区二区果冻传媒| 丝袜亚洲另类欧美综合| 亚洲日本在线视频观看| 国产日本欧美一区二区| 日韩一区二区精品葵司在线| 精品视频色一区| 欧美午夜精品免费| 欧美综合一区二区三区| 99re热这里只有精品免费视频| 精品亚洲porn| 久久精品国产一区二区三| 天天色综合天天| 亚洲一区在线电影| 亚洲欧美一区二区久久| 国产精品欧美综合在线| 久久久电影一区二区三区| 精品999久久久| 日韩欧美一级片| 欧美成人精精品一区二区频| 欧美蜜桃一区二区三区| 欧美视频在线一区二区三区 | 亚洲国产精品一区二区www在线| 亚洲欧洲日韩av| 亚洲桃色在线一区| 国产精品国产三级国产专播品爱网| 久久久久久久久久电影| 26uuu精品一区二区三区四区在线| 在线播放91灌醉迷j高跟美女| 欧美日韩www| 91精品国产综合久久久久久久久久| 欧美日韩亚洲国产综合| 91精品啪在线观看国产60岁| 欧美美女一区二区在线观看| 欧美视频一区二区三区四区| 色婷婷久久久久swag精品 | 精品国产成人在线影院| 91精品国产综合久久精品性色| 欧美私人免费视频| 制服视频三区第一页精品| 日韩欧美www| 国产精品网站在线播放| 亚洲黄一区二区三区| 天天操天天综合网| 久久精品国产一区二区| 成人免费高清在线| 色欧美乱欧美15图片| 欧美一区二区免费视频| 日韩欧美在线不卡| 国产午夜精品久久久久久免费视| 国产精品国产三级国产专播品爱网 | 久久久一区二区三区| 国产精品美女久久久久高潮| 中文字幕一区在线观看| 视频在线观看一区二区三区| 久久精品国产亚洲aⅴ| heyzo一本久久综合| 欧美日韩免费一区二区三区视频| 日韩免费视频一区二区| 国产亚洲精品中文字幕| 亚洲一区二区三区三| 久久99精品久久久久久久久久久久 | 国产精品久久久久aaaa樱花| 一区二区三区日韩欧美精品| 久久99精品久久久久久| 成人h精品动漫一区二区三区| 欧美日韩一区二区在线视频| 久久久精品天堂| 免费精品视频在线| 色综合久久99| 国产欧美一区二区精品性| 丝袜诱惑制服诱惑色一区在线观看 | 欧美精品99久久久**|