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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? lsscalendar.pas

?? 是一個(gè)免費(fèi)并開源的支持農(nóng)歷的月歷控件
?? PAS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
      i := 1;
      while (i < length(S)) and (i < 6) do
      begin
        S1 := Copy(S,i,2);
        {$IFDEF AAFONT}
        if FSmoothText then
          AAFont.TextOut(R.Left + 2, YY,S1)
        else
        {$ENDIF}
          Canvas.TextOut(R.Left + 2, YY,S1);
        yy := yy + H;
        i := i + 2;
      end;
    end
    else if FLunarCalStyle = csRight then
      DrawString(S,R,DT_VCENTER OR DT_LEFT)
    else
      DrawString(S,R,DT_TOP OR DT_CENTER);
  end;

  procedure DrawFtvDay(R:TRect; TheDate:TDate);
  var
    S,S1:string;
    H, yy, i, j:integer;
    ch: char;
    fcolor: TColor;
  begin
    S:= GetFtv(TheDate, fcolor);
    if S = '' Then Exit;
    if Length(S) > MaxFtvLen then
    begin
      //計(jì)算S包含的single-byte ASCII字符
      j := 0;
      for i := 1 to MaxFtvLen - 2 do
      begin
        ch := S[i];
        if SizeOf(ch) = 1 then  //multibyte
        begin
          if (Ord(ch) and $80) = 0 then Inc(j);
        end;
      end;
      if j mod 2 > 0 then
        S := Copy(S, 1, MaxFtvLen - 3)
      else
        S := Copy(S, 1, MaxFtvLen - 2);
      S := S + '…';
    end;

    Canvas.Font := FCalColors.FtvTextFont;
    if M <> MonthOf(FViewDate) then
      Canvas.Font.Color := FCalColors.TrailingTextColor
    else if fcolor > -1 then     //說明:雖然在TFestivalList.Creat()中初始化為clRed,不知為什么GetFtv()返回的fcolor總是0。由于最近比較忙,沒有進(jìn)行深入分析這個(gè)bug。如果有哪位高手解決,請(qǐng)給我發(fā)一份wangzhijun2005@hotmail.com。
      Canvas.Font.Color := fcolor;
    if (FFtvCalStyle = csRight) and FShowVertical then
    begin
      H:= Canvas.TextHeight(S);
      yy := R.Top + (R.Bottom - R.Top) div 3 - H;
      i := 1;
      while (i < length(S)) and (i < 6) do
      begin
        S1 := Copy(S,i,2);
        {$IFDEF AAFONT}
        if FSmoothText then
          AAFont.TextOut(R.Left + 2, YY,S1)
        else
        {$ENDIF}
          Canvas.TextOut(R.Left + 2, YY,S1);
        yy := yy + H;
        i := i + 2;
      end;
    end
    else if FFtvCalStyle = csRight then
      DrawString(S,R,DT_VCENTER OR DT_LEFT)
    else
      DrawString(S,R,DT_TOP OR DT_CENTER);
  end;

begin {= TLssCalendar.Paint =}
  inherited;
  Canvas.Font.Assign(Font);
  {$IFDEF AAFONT}
  if FSmoothText then
  begin
    AAFont := TAAFontEx.Create(Canvas);
    AAFont.Quality := aqHigh;
    AAFont.Effect.Shadow.Enabled := FShadowFont;
  end;
  {$ENDIF}
  
  try
    with Canvas,FCalColors do
    begin   
      // 畫年月
      if RectVisible(Canvas.Handle,FTitleRect) then
      begin
        Brush.Color := TitleBackColor;
        Brush.Style := bsSolid;
        FillRect(FTitleRect);

        Brush.Style := bsClear;
        Font := TitleTextFont;
        Gzdate := GetGz(FViewDate);
        if FChineseEar then
        begin
          Outputstr := Cyclical(Gzdate.Year) + '(' + GetAnimal(GzDate.year) +
          ')年' + Cyclical(GzDate.Month) + '月';
        end
        else begin
          if FEnWeekName then
            OutputStr := MonthEnName(Month, True) + ' ' + InttoStr(Year)
          else
            OutputStr := FormatDateTime('yyyy年m月',FViewDate);
        end;
        DrawString(OutputStr,FTitleRect,DT_CENTER or DT_VCENTER);

        if FShowArrow then
        begin
          Font.Color := ArrowColor;
          Font.Size := Font.Size * 3 div 5;
          DrawString('《',FPrevYearRect,DT_CENTER or DT_VCENTER);
          DrawString('〈',FPrevMonthRect,DT_CENTER or DT_VCENTER);
          DrawString('〉',FNextMonthRect,DT_CENTER or DT_VCENTER);
          DrawString('》',FNextYearRect,DT_CENTER or DT_VCENTER);
        end;
      end;

      //////////////////////////////////////

      //畫星期
      R := Bounds(FWeekRect.Left,FWeekRect.Top,FCellWidth,FCellHeight);
      if RectVisible(Canvas.Handle, FWeekRect) then
      begin
        Brush.Color := WeekBackColor;
        Brush.Style := bsSolid;
        FillRect(FWeekRect);

        Brush.Style := bsClear;
        for i := 0 to 6 do
        begin
          aWeekDay := i;
          if FUseISO8601 then Inc(aWeekDay);

          Font := FWeekTextFont;
          if (aWeekDay = 0) or (aWeekDay = 7) then  //Sunday
            Font.Color := FSundayColor
          else if aWeekDay = 6 then   //Saturday
            Font.Color := FSaturdayColor;

          if FEnWeekName then
            OutputStr := WeekEnName(aWeekDay)
          else
            OutputStr := FormatWeekDay(aWeekDay);
          drawstring(OutputStr,R,DT_CENTER or DT_VCENTER);
          OffsetRect(R, FCellWidth , 0 );
        end;
        if not FShowGrid then
        begin
          Pen.Color := WeekTextFont.Color;
          Pen.Width := 1;
          Pen.Mode := pmCopy;
          PenPos := Point(2,FWeekRect.Bottom - 2);
          LineTo(FWeekRect.Right - 2 , FWeekRect.Bottom - 2);
        end;
      end;

      //////////////////////////////////////

      //畫背景
      Brush.Color := Color;
      Brush.Style := bsSolid;
      FillRect(FDaysRect);
  
      if FShowBackImage and (FBackImage <> nil) then
      begin
        StretchDraw(FDaysRect, FBackImage.Picture.Bitmap);
      end;

      Brush.Style := bsClear;   //透明
      if FShowBackMonth then
      begin
        Font := BackMonthTextFont;
        OutputStr := FormatDateTime('m',FViewDate);
        TextSize := TextExtent(OutputStr);
        {$IFDEF AAFONT}
        if FSmoothText then
          AAFont.TextOut(FDaysRect.Left + (Width - TextSize.cx) div 2,
              FDaysRect.Top + (FDaysRect.Bottom - FDaysRect.Top - TextSize.cy) div 2,OutputStr)
        else
        {$ENDIF}
          Canvas.TextOut(FDaysRect.Left + (Width - TextSize.cx) div 2,
              FDaysRect.Top + (FDaysRect.Bottom - FDaysRect.Top - TextSize.cy) div 2,OutputStr);
      end;
      
      if FShowBorder then
      begin
        Brush.Color := FCalColors.FBorderColor;
        //Brush.Style := bsSolid;
        FrameRect(ClientRect);
        //Brush.Style := bsClear;
      end;
      if FShowGrid then
        DrawGrid;

      //////////////////////////////////////

      //畫日期
      R := Bounds(FDaysRect.Left, FDaysRect.Top , FCellWidth , FCellHeight);
      for i := 0 to 41 do
      begin
        Col := i mod 7;
        if FUseISO8601 then Inc(Col);
        if RectVisible(Canvas.Handle, R) then
        begin
          TempDate := IncDay(FFirstDate, i);
          DeCodeDate(TempDate,Y,M,D);

          Font := DayTextFont;
          if M = MonthOf(FViewDate) then
            if (Col = 0) or (Col = 7) then
              Font.Color := SundayColor
            else
              if col = 6 then
                Font.Color := SaturdayColor
              else
                Font.Color := DayTextFont.Color
          else
            Font.Color := TrailingTextColor;

          if GetMark(TempDate) > -1 then
          begin
            Brush.Style := bsSolid;
            Brush.Color := GetMark(TempDate);
            FillRect(R);
          end;

          if TempDate = FViewDate then      //高亮顯示月歷日期
          begin
            Brush.Style := bsSolid;
            Brush.Color := HightlightBackColor;
            Font.Color := HightlightTextColor;
            FillRect(R);
            FOldRect := R;
            DR := R;
            InflateRect(DR,-2,-2);
            //if Focused then Windows.DrawFocusRect(Handle,dR);
            DrawFocusRect(DR);
            //Brush.Style := bsClear;
          end;

          Brush.Style := bsClear;
          if TempDate = DateOf(Now) then      //在當(dāng)前日期畫一紅色框
          begin
            Pen.Color := ClRed;
            Pen.Width := 1;
            Rectangle(R.Left, R.Top, R.Right, R.Bottom );
          end;

          OutputStr := intToStr(D);
          SR := FSolarRect;
          OffsetRect(SR, R.Left, R.Top);
          DrawString(OutputStr,SR,DT_VCENTER OR DT_CENTER);

          if not IsRectEmpty(FFtvRect) and (FLunarCalStyle = FFtvCalStyle) then
          begin
            if GetFtv(TempDate) <> '' then
            begin
              FR := FFtvRect;
              OffsetRect(FR, R.Left, R.Top);
              DrawFtvDay(FR,TempDate);
            end
            else begin
              DR := FLunarRect;
              OffsetRect(DR, R.Left, R.Top);
              DrawHzDay(DR,TempDate);
            end;
          end
          else begin
            if not IsRectEmpty(FLunarRect) then
            begin
              DR := FLunarRect;
              OffsetRect(DR, R.Left, R.Top);
              DrawHzDay(DR,TempDate);
            end;

            if not IsRectEmpty(FFtvRect) then
            begin
              FR := FFtvRect;
              OffsetRect(FR, R.Left, R.Top);
              DrawFtvDay(FR,TempDate);
            end;
          end;
        end;

        OffsetRect(R, 0, 0);
        if (FUseISO8601 and (col = 7)) or (not FUseISO8601 and (col = 6)) then
          OffsetRect(R, FDaysRect.Left - R.Left , FCellHeight)
        else
          OffsetRect(R,FCellWidth,0);
      end; {end for}
    end; {end with}
  finally
    {$IFDEF AAFONT}
    if FSmoothText then AAFont.Free;
    {$ENDIF}
  end;
end; {= TLssCalendar.Paint =}

procedure TLssCalendar.Resize;
begin
  inherited;
  CalcRect;
end;

procedure TLssCalendar.CalcRect;
var
  TextSize: TSize;
  S: string;
  w, h: integer;
begin
  Canvas.Font.Assign(Font);
  FCellWidth := ClientRect.Right div 7;
  FCellHeight := ClientRect.Bottom div 8;
  FTitleRect := ClientRect;
  FTitleRect.Bottom := FCellHeight;

  FWeekRect := Bounds(0, FTitleRect.Bottom, ClientRect.Right, FCellHeight);
  FDaysRect := Bounds(0, FWeekRect.Bottom, ClientRect.Right, ClientRect.Bottom - FWeekRect.Bottom);

  FSolarRect := Bounds(0, 0, FCellWidth, FCellHeight);
  FLunarRect := Bounds(0, 0, 0, 0);
  FFtvRect := Bounds(0, 0, 0, 0);
  w := Round(FCellWidth / FHorizonScale);
  h := Round(FCellHeight / FVerticalScale);
  case FLunarCalStyle of
    csNone:
      case FFtvCalStyle of
        csNone: ;
        csRight:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth - w, FCellHeight);
            FFtvRect := Bounds(FSolarRect.Right, 0, w, FCellHeight);
          end;
        csBottom:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth, FCellHeight - h);
            FFtvRect := Bounds(0, FSolarRect.Bottom, FCellWidth, h);
          end;
      end;
    csRight:
      case FFtvCalStyle of
        csNone:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth - w, FCellHeight);
            FLunarRect := Bounds(FSolarRect.Right, 0, w, FCellHeight);
          end;
        csRight:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth - w, FCellHeight);
            FLunarRect := Bounds(FSolarRect.Right, 0, w, FCellHeight);
            FFtvRect := FLunarRect;
          end;
        csBottom:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth - w, FCellHeight - h);
            FLunarRect := Bounds(FSolarRect.Right, 0, w, FCellHeight - h);
            FFtvRect := Bounds(0, FSolarRect.Bottom, FCellWidth, h);
          end;
      end;
    csBottom:
      case FFtvCalStyle of
        csNone:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth, FCellHeight - h);
            FLunarRect := Bounds(0, FSolarRect.Bottom, FCellWidth, h);
          end;
        csRight:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth - w, FCellHeight - h);
            FLunarRect := Bounds(0, FSolarRect.Bottom, FCellWidth, h);
            FFtvRect := Bounds(FSolarRect.Right, 0, w, FCellHeight - h);
          end;
        csBottom:
          begin
            FSolarRect := Bounds(0, 0, FCellWidth, FCellHeight - h);
            FLunarRect := Bounds(0, FSolarRect.Bottom, FCellWidth, h);
            FFtvRect := FLunarRect;
          end;
      end;
  end;

  with FCalColors do
  begin
    if FAutoFontSize then
    begin
      BackMonthTextFont.Size := GetMaxTextSize('9',FDaysRect.Right,Round((FDaysRect.Bottom - FDaysRect.Top) * 0.9));;
      TitleTextFont.Size := GetMaxTextSize(FormatDateTime('yyyy年mm月',FViewDate),FTitleRect.Right,Round((FTitleRect.Bottom - FTitleRect.Top) * 0.8 ));
      WeekTextFont.Size := GetMaxTextSize(FormatDateTime('ddd',FViewDate),Round(FCellWidth * 0.9),FCellHeight);

      DayTextFont.Size := GetMaxTextSize(FormatDateTime('dd',FViewDate),FSolarRect.Right, FSolarRect.Bottom);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区美女诱惑| 免费高清在线一区| 日韩欧美中文字幕制服| 成人久久18免费网站麻豆| 午夜精品成人在线视频| 国产精品无圣光一区二区| 正在播放亚洲一区| 99国产欧美久久久精品| 国内精品不卡在线| 夜夜嗨av一区二区三区中文字幕| 久久久精品中文字幕麻豆发布| 在线观看一区日韩| 成人av资源在线| 久久草av在线| 视频一区二区国产| 亚洲裸体在线观看| 国产人成亚洲第一网站在线播放| 在线成人av影院| 在线视频综合导航| 99热99精品| 成人丝袜高跟foot| 国产精品一品视频| 精品一区二区影视| 日本午夜精品视频在线观看 | 欧美男人的天堂一二区| 成人性生交大片免费| 激情深爱一区二区| 蜜乳av一区二区三区| 五月天丁香久久| 亚洲一区二区美女| 亚洲综合免费观看高清完整版| 国产精品成人免费在线| 中文字幕成人在线观看| 欧美经典一区二区| 久久精品水蜜桃av综合天堂| 久久综合九色综合欧美就去吻| 日韩视频在线一区二区| 日韩一区二区在线观看| 欧美一区在线视频| 欧美一卡二卡在线观看| 日韩亚洲欧美中文三级| 日韩女优av电影| 精品国产凹凸成av人网站| 337p日本欧洲亚洲大胆精品| 精品国产成人系列| 国产婷婷色一区二区三区四区| 日本一区二区三区dvd视频在线| 国产女人aaa级久久久级| 国产精品久线在线观看| 一区二区三区中文字幕精品精品 | 国产日产欧产精品推荐色| 国产校园另类小说区| 欧美国产成人在线| 亚洲视频在线一区二区| 一区二区三区在线免费观看| 亚洲高清不卡在线观看| 美女视频黄a大片欧美| 国产伦精品一区二区三区免费迷 | 欧美精品123区| 日韩三级伦理片妻子的秘密按摩| 精品日韩欧美在线| 国产精品免费视频网站| 亚洲嫩草精品久久| 日韩电影免费在线观看网站| 国产综合久久久久影院| 91精品蜜臀在线一区尤物| 精品国产乱码久久久久久图片| 国产婷婷色一区二区三区在线| 亚洲精品免费在线观看| 天堂蜜桃一区二区三区 | 美女免费视频一区| 国产v日产∨综合v精品视频| 97精品电影院| 欧美一区二区三区在线视频| 国产片一区二区三区| 亚洲色图欧美偷拍| 热久久免费视频| 成人app网站| 欧美福利一区二区| 国产欧美视频在线观看| 亚洲成人一区二区| 国产精品123| 欧美三级一区二区| 久久精品一区二区三区四区| 亚洲永久免费视频| 国产精品正在播放| 欧美视频三区在线播放| 久久精品这里都是精品| 午夜国产精品一区| www..com久久爱| 日韩欧美的一区| 亚洲精品写真福利| 国产精品一线二线三线| 欧美日韩国产精品成人| 国产精品久久综合| 另类小说视频一区二区| 欧美中文字幕一区二区三区| 中文av一区特黄| 蜜桃精品视频在线观看| 欧美熟乱第一页| 国产精品欧美综合在线| 久久精品国产色蜜蜜麻豆| 欧美午夜电影在线播放| 国产农村妇女毛片精品久久麻豆 | 精品日韩在线一区| 亚洲国产综合视频在线观看| 成人三级在线视频| 精品福利一区二区三区免费视频| 亚洲成a天堂v人片| 99久久国产综合精品女不卡| 久久这里只有精品6| 秋霞午夜av一区二区三区| 欧洲一区在线观看| 亚洲视频在线观看三级| 国产精品综合一区二区| 日韩精品一区二区三区swag | 国产精品午夜在线| 激情六月婷婷综合| 日韩一级高清毛片| 午夜精品福利在线| 欧美群妇大交群中文字幕| 亚洲女同一区二区| 91网站在线播放| 成人欧美一区二区三区白人 | 中文字幕av一区二区三区高 | 日韩av中文字幕一区二区三区| 欧美伊人久久久久久午夜久久久久| 国产精品二三区| av在线不卡免费看| 欧美国产综合一区二区| 国产不卡在线播放| 国产清纯在线一区二区www| 国产成人啪免费观看软件| 久久亚洲影视婷婷| 国产精品一区二区久久精品爱涩 | 国产一区欧美一区| 精品粉嫩超白一线天av| 欧美精品一级二级三级| 亚洲成人你懂的| 欧美日韩国产一级片| 午夜精品在线看| 日韩一级精品视频在线观看| 美女在线视频一区| 久久伊人蜜桃av一区二区| 国产精品自拍一区| 国产精品色哟哟网站| 99久久免费精品高清特色大片| 一区二区三区四区精品在线视频 | 国产日韩在线不卡| 成人黄色片在线观看| 亚洲欧美偷拍卡通变态| 色香色香欲天天天影视综合网| 亚洲自拍与偷拍| 777xxx欧美| 国产一区999| 17c精品麻豆一区二区免费| 91久久精品国产91性色tv| 午夜伦欧美伦电影理论片| 欧美成人官网二区| 国产 欧美在线| 一区二区三区在线视频观看| 51久久夜色精品国产麻豆| 国内成人自拍视频| 亚洲欧美日韩成人高清在线一区| 在线观看中文字幕不卡| 免费美女久久99| 中文字幕在线一区免费| 欧美日韩精品一区二区三区| 黄网站免费久久| 亚洲视频网在线直播| 91精品婷婷国产综合久久性色| 国产一区欧美日韩| 一区二区成人在线观看| 日韩亚洲欧美中文三级| av电影在线观看一区| 婷婷六月综合网| 国产精品网站在线观看| 欧美日韩精品高清| 国产成人在线视频播放| 亚洲成人av一区二区三区| www欧美成人18+| 欧美午夜电影网| 国产91丝袜在线播放九色| 午夜精品福利久久久| 国产精品色噜噜| 日韩亚洲欧美在线观看| 99精品国产视频| 国产综合色精品一区二区三区| 亚洲美女视频在线观看| 婷婷丁香激情综合| 国产精品进线69影院| 日韩欧美电影一二三| 色婷婷香蕉在线一区二区| 韩国在线一区二区| 亚洲综合色丁香婷婷六月图片| 国产婷婷色一区二区三区四区| 欧美精品三级在线观看| 97国产精品videossex| 国产精品资源在线观看| 日韩av网站在线观看|