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

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

?? bscolorctrls.pas

?? 一套支持Delphi的VCL庫
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
      else
      if C_X > PosCar+RectPSP.Right
      then
        C_X := PosCar+RectPSP.Right;

      if C_Y < RectPSP.Top
      then
        C_Y := RectPSP.Top
      else
      if C_Y > RectPSP.Bottom
      then
        C_Y := RectPSP.Bottom;

      HSLPSP := PSPColor.HSLPSP;
      HSLPSP.S := Round(255 * ((C_X-(PosCar+RectPSP.Left)) / (RectPSP.Right-RectPSP.Left)));
      HSLPSP.L := Round(255 * ((C_Y-RectPSP.Top) / (RectPSP.Bottom-RectPSP.Top)));
      DrawCursor;
      PSPColor.HSLPSP := HSLPSP;
      ChangeEdits;
      DrawCursor;
      PalettePSP.Repaint;
    end;
  end;
end;

procedure TbsSkinColorDialog.PalettePSPMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  HSLPSP : THSLPSP;
  C_X,C_Y : Integer;
  Angle : Integer;
begin
  if mbLeft=Button then
  case ClickImg of
    czpspPCircle :
    begin
      C_X := PosCar+RectPSP.Left+(RectPSP.Right-RectPSP.Left)div 2;
      C_Y := RectPSP.Top+(RectPSP.Bottom-RectPSP.Top)div 2;;
      Angle := Round(CalcAngle3Points(C_X, 0, C_X, C_Y, X,Y));
      if Angle = 360 then Angle := 0;
      Angle := 359 - Angle;
      HSLPSP := PSPColor.HSLPSP;
      HSLPSP.H := Round(255 * (Angle / 359));
      if HSLPSP.H <> PSPColor.HSLPSP.H
      then
        begin
          DrawCursor;
          PSPColor.HSLPSP := HSLPSP;
          ChangeEdits;
          DrawPSPPalette;
        end;
    end;

    czpspPCar :
    begin
      C_X := X;
      C_Y := Y;
      if C_X<PosCar+RectPSP.Left
      then
        C_X:= PosCar+RectPSP.Left
      else
      if C_X>PosCar+RectPSP.Right
      then
        C_X:= PosCar+RectPSP.Right;

      if C_Y<RectPSP.Top
      then
        C_Y:= RectPSP.Top
      else
      if C_Y>RectPSP.Bottom
      then
        C_Y:= RectPSP.Bottom;

      HSLPSP := PSPColor.HSLPSP;
      HSLPSP.S := Round(255 * ((C_X - (PosCar + RectPSP.Left)) / (RectPSP.Right - RectPSP.Left)));
      HSLPSP.L := Round(255 * ((C_Y - RectPSP.Top) / (RectPSP.Bottom-RectPSP.Top)));
      DrawCursor;
      PSPColor.HSLPSP := HSLPSP;
      ChangeEdits;
      DrawCursor;
      PalettePSP.Repaint;
    end;
  end;
  ClickImg := czpspPnone;
end;

constructor TbsSkinCustomColorGrid.Create(AOwner: TComponent);
var
  i: Integer;
begin
  inherited;
  ControlStyle := ControlStyle - [csAcceptsControls];
  FForceBackground := False;
  CaptionMode := True;
  Caption := BS_CUSTOMCOLORGRID_CAP;
  BorderStyle := bvFrame;
  Width := 280;
  Height := 115;
  FColorValue := 0;
  FColCount := 6;
  FRowCount := 2;
  for i := 1 to 12 do CustomColorValues[I] := clWhite;
  FColorsCount := 0;
  FColorIndex := 0;
end;

destructor TbsSkinCustomColorGrid.Destroy;
begin
  inherited;
end;

procedure TbsSkinCustomColorGrid.PaintTransparent;
begin
  PaintGrid(C);
end;


procedure TbsSkinCustomColorGrid.WMEraseBkgnd;
begin
  if not FromWMPaint
  then
    begin
      PaintWindow(Msg.DC);
    end;
end;

procedure TbsSkinCustomColorGrid.AddColor(AColor: TColor);
begin
  if FColorsCount = 12 then FColorsCount := 0;
  Inc(FColorsCount);
  CustomColorValues[FColorsCount] := AColor;
  RePaint;
end;

procedure TbsSkinCustomColorGrid.SetColCount(Value: Integer);
begin
  if Value < 1 then Exit;
  FColCount := Value;
  RePaint;
end;

procedure TbsSkinCustomColorGrid.SetRowCount(Value: Integer);
begin
  FRowCount := Value;
  RePaint;
end;

procedure TbsSkinCustomColorGrid.DrawCursor;
var
  Buffer: TBitMap;
  CIndex: Integer;
  ButtonData: TbsDataSkinButtonControl;
  BtnSkinPicture: TBitMap;
  BtnLtPoint, BtnRTPoint, BtnLBPoint, BtnRBPoint: TPoint;
  BtnCLRect: TRect;
  XO, YO: Integer;
  SR: TRect;
begin
  if FIndex = -1
  then
    begin
      Buffer := TBitMap.Create;
      Buffer.Width := RectWidth(R);
      Buffer.Height := RectHeight(R);
      with Buffer.Canvas do
      begin
        Brush.Color :=  BS_XP_BTNDOWNCOLOR;
        Pen.Color := BS_XP_BTNFRAMECOLOR;
        Rectangle(0, 0, Buffer.Width, Buffer.Height);
      end;
      Cnvs.Draw(R.Left, R.Top, Buffer);
      Buffer.Free;
      Exit;
    end;
  CIndex := SkinData.GetControlIndex('resizebutton');
  if CIndex = -1
  then
    Exit
  else
    ButtonData := TbsDataSkinButtonControl(SkinData.CtrlList[CIndex]);
    
  Buffer := TBitMap.Create;
  Buffer.Width := RectWidth(R);
  Buffer.Height := RectHeight(R);
  //
  with ButtonData do
  begin
    XO := RectWidth(R) - RectWidth(SkinRect);
    YO := RectHeight(R) - RectHeight(SkinRect);
    BtnLTPoint := LTPoint;
    BtnRTPoint := Point(RTPoint.X + XO, RTPoint.Y);
    BtnLBPoint := Point(LBPoint.X, LBPoint.Y + YO);
    BtnRBPoint := Point(RBPoint.X + XO, RBPoint.Y + YO);
    BtnClRect := Rect(CLRect.Left, ClRect.Top,
      CLRect.Right + XO, ClRect.Bottom + YO);
    BtnSkinPicture := TBitMap(SkinData.FActivePictures.Items[ButtonData.PictureIndex]);
    SR := DownSkinRect;
    if IsNullRect(SR) then SR := ActiveSkinRect;
    CreateSkinImage(LTPoint, RTPoint, LBPoint, RBPoint, CLRect,
        BtnLtPoint, BtnRTPoint, BtnLBPoint, BtnRBPoint, BtnCLRect,
        Buffer, BtnSkinPicture, SR, Buffer.Width, Buffer.Height, True,
        LeftStretch, TopStretch, RightStretch, BottomStretch,
        StretchEffect, StretchType);
  end;
  //
  Cnvs.Draw(R.Left, R.Top, Buffer);
  Buffer.Free;
end;


procedure TbsSkinCustomColorGrid.PaintGrid(Cnvs: TCanvas);
var
  RX, RY, X, Y, CW, CH, i, j, k: Integer;
  R, R1, Rct: TRect;
begin
  R := Rect(0, 0, Width, Height);
  AdjustClientRect(R);
  CW := (RectWidth(R) - ColCount * 2) div ColCount;
  CH := (RectHeight(R) - RowCount * 2) div RowCount;

  R1 := Rect(0, 0, (CW + 2) * ColCount, (CH + 2) * RowCount);
  RX := R.Left + RectWidth(R) div 2 - RectWidth(R1) div 2;
  RY := R.Top + RectHeight(R) div 2 - RectHeight(R1) div 2;
  R := Rect(RX, RY, RX + RectWidth(R1), RectHeight(R1));

  Y := R.Top + 1;
  k := 0;
  for i := 1 to RowCount do
  begin
    X := R.Left + 1;
    for j := 1 to ColCount do
    begin
      Inc(k);
      with Cnvs do
      begin
        Brush.Color := CustomColorValues[k];

        Rct := Rect(X - 1, Y -1 , X + CW + 1, Y + CH + 1);

        if k = FColorIndex
        then
          begin
            DrawCursor(Cnvs, Rct);
          end;

        if k = FColorIndex
        then
          Rct := Rect(X + 3, Y + 3 , X + CW - 3, Y + CH - 3)
        else
          Rct := Rect(X + 2, Y + 2 , X + CW - 2, Y + CH - 2);
          
        InflateRect(Rct, -1, -1);
        FillRect(Rct);
        InflateRect(Rct, 1, 1);
      end;
      Inc(X, CW + 2);
    end;
    Inc(Y, CH + 2);
  end;
end;

procedure TbsSkinCustomColorGrid.CreateControlDefaultImage;
begin
  inherited;
  PaintGrid(B.Canvas);
end;

procedure TbsSkinCustomColorGrid.CreateControlSkinImage;
begin
  inherited;
  PaintGrid(B.Canvas);
end;

procedure TbsSkinCustomColorGrid.MouseDown(Button: TMouseButton; Shift: TShiftState;
                                     X, Y: Integer);
var
  RX, RY, X1, Y1, CW, CH, i, j, k: Integer;
  R, R1, Rct: TRect;
begin
  inherited;
  R := Rect(0, 0, Width, Height);
  AdjustClientRect(R);
  CW := (RectWidth(R) - ColCount * 2) div ColCount;
  CH := (RectHeight(R) - RowCount * 2) div RowCount;

  R1 := Rect(0, 0, (CW + 2) * ColCount, (CH + 2) * RowCount);
  RX := R.Left + RectWidth(R) div 2 - RectWidth(R1) div 2;
  RY := R.Top + RectHeight(R) div 2 - RectHeight(R1) div 2;
  R := Rect(RX, RY, RX + RectWidth(R1), RectHeight(R1));

  Y1 := R.Top + 1;
  k := 0;
  for i := 1 to RowCount do
  begin
    X1 := R.Left + 1;
    for j := 1 to ColCount do
    begin
      Inc(k);
      Rct := Rect(X1, Y1, X1 + CW, Y1 + CH);
      if PtInRect(Rct, Point(X, Y))
      then
        begin
          FColorValue := CustomColorValues[k];
          FColorIndex := k;
          RePaint;
          if Assigned(FOnChange) then FOnChange(Self);
          Break;
        end;
      Inc(X1, CW + 2);
    end;
    Inc(Y1, CH + 2);
  end;  
end;

constructor TbsSkinColorButton.Create(AOwner: TComponent);
begin
  inherited;
  FDrawColorMarker := True;
  ColorDialog := nil;
  FColorMarkerValue := 0;
  FColorImages := TCustomImageList.Create(Self);
  FColorMenu := TbsSkinImagesMenu.Create(Self);
  FColorMenu.Images := FColorImages;
  FColorMenu.OnItemClick := OnImagesMenuClick;
  FColorMenu.OnMenuPopup := OnImagesMenuPopup;
  FAutoColor := 0;
  FShowAutoColor := True;
  FShowMoreColor := True;
  InitColors;
end;

procedure TbsSkinColorButton.SetShowAutoColor(Value: Boolean);
begin
  if FShowAutoColor <> Value
  then
    begin
      FShowAutoColor := Value;
      if not (csDesigning in ComponentState) and
         not (csLoading in ComponentState)
      then
        InitColors;
    end;
end;

procedure TbsSkinColorButton.SetShowMoreColor(Value: Boolean);
begin
  if FShowMoreColor <> Value
  then
    begin
      FShowMoreColor := Value;
      if not (csDesigning in ComponentState) and
         not (csLoading in ComponentState)
      then
        InitColors;
    end;
end;


procedure TbsSkinColorButton.SetColorValue;
begin
  FColorMarkerValue := Value;
  RePaint;
  if not (csDesigning in ComponentState) and
     not (csLoading in ComponentState)
  then
    if Assigned(FOnChangeColor) then FOnChangeColor(Self);
end;

procedure TbsSkinColorButton.InitColors;
var
  B: TBitMap;
  Item: TbsImagesMenuItem;
  I: Integer;
begin
  //
  FSkinImagesMenu := FColorMenu;
  FSkinPopupMenu := nil;
  //
  if FColorImages.Count <> 0 then FColorImages.Clear;
  if FColorMenu.ImagesItems.Count <> 0 then FColorMenu.ImagesItems.Clear;
  // init menu
  FColorMenu.ColumnsCount := 8;
  FColorMenu.SkinData := Self.SkinData;
  FColorMenu.ItemIndex := 0;
  // 1
  if FShowAutoColor
  then
    begin
      Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
      with Item do
      begin
        ImageIndex := 0;
        FColor := FAutoColor;
        if (FColorMenu.SkinData <> nil) and
           (FColorMenu.SkinData.ResourceStrData <> nil)
        then
          Caption := FColorMenu.SkinData.ResourceStrData.GetResStr('AUTOCOLOR')
        else
          Caption := BS_AUTOCOLOR;
        Button := True;
      end;
    end;
  // 2
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 1;
    FColor := clBlack;
  end;
  // 3
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 2;
    FColor := $00003399;;
  end;
  // 4
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 3;
    FColor := $00003333;
  end;
  // 5
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 4;
    FColor := $00003300;
  end;
  // 6
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 5;
    FColor := $00663300;
  end;
  // 7
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 6;
    FColor := clNavy;
  end;
  // 8
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 7;
    FColor := $00353333;
  end;
  // 9
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 8;
    FColor := $00333333;
  end;
  // 10
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 9;
    FColor := RGB(128, 0, 0);
  end;
  // 11
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 10;
    FColor := RGB(255, 102, 0);
  end;
  // 12
  Item := TbsImagesMenuItem(FColorMenu.ImagesItems.Add);
  with Item do
  begin
    ImageIndex := 11;
    FColor := RGB(128, 12

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区国产| 精品国精品国产| 欧美一区二区三区四区高清| 久久夜色精品国产欧美乱极品| 国产精品免费视频观看| 日韩精品亚洲一区二区三区免费| 成人少妇影院yyyy| 欧美一区二区女人| 亚洲综合一二三区| eeuss鲁片一区二区三区 | 欧美影院一区二区| 久久婷婷国产综合精品青草| 亚洲小少妇裸体bbw| 成人av片在线观看| 欧美精品一区二区三区在线播放| 亚洲一区二区在线视频| 成人精品在线视频观看| 精品成人免费观看| 极品少妇一区二区三区精品视频| 91丨九色丨国产丨porny| 久久午夜电影网| 精品一区二区在线视频| 51精品久久久久久久蜜臀| 亚洲一区二区三区免费视频| 99国内精品久久| 国产三级精品三级| 国产91精品露脸国语对白| 日韩欧美中文字幕制服| 秋霞午夜鲁丝一区二区老狼| 5566中文字幕一区二区电影| 亚洲一区二区三区影院| 在线一区二区观看| 一区二区三区加勒比av| 91久久国产综合久久| 亚洲欧美色图小说| 91久久免费观看| 亚洲免费观看在线视频| 在线一区二区三区做爰视频网站| 亚洲视频一区二区在线| 色呦呦国产精品| 一区二区三区91| 欧美三级电影在线观看| 日韩成人精品视频| 日韩欧美国产wwwww| 九九**精品视频免费播放| 日韩美一区二区三区| 国产一区在线不卡| 国产精品欧美精品| 一本色道久久综合亚洲aⅴ蜜桃| 亚洲高清不卡在线| 日韩一级完整毛片| 国产乱人伦偷精品视频免下载 | 日本大胆欧美人术艺术动态| 日韩精品一区二| 成人高清免费在线播放| 亚洲黄一区二区三区| 91精品国产一区二区| 激情五月婷婷综合| 自拍偷自拍亚洲精品播放| 欧美自拍偷拍一区| 国模一区二区三区白浆| 日本一区二区成人在线| 在线观看日韩高清av| 喷水一区二区三区| 国产精品丝袜91| 欧美日韩亚洲综合| 精品一区二区三区在线视频| 国产精品三级久久久久三级| 欧美体内she精高潮| 国产在线日韩欧美| 一区二区三区久久久| 日韩一级片在线观看| 色综合久久久久综合体| 免费观看30秒视频久久| 综合久久一区二区三区| 日韩欧美资源站| 9i在线看片成人免费| 日韩成人一级大片| 亚洲人成亚洲人成在线观看图片 | 欧美无砖专区一中文字| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美国产日本韩| 日韩精品最新网址| 欧美中文字幕亚洲一区二区va在线 | 全国精品久久少妇| 国产精品人成在线观看免费| 欧美日韩日日摸| www.成人网.com| 国产一区二区三区精品视频| 视频一区中文字幕| 亚洲精品午夜久久久| 国产精品久久久久久一区二区三区 | 五月天中文字幕一区二区| 中文字幕精品—区二区四季| 精品裸体舞一区二区三区| 欧美三级视频在线观看| 99v久久综合狠狠综合久久| 国产精品伊人色| 激情都市一区二区| 秋霞午夜av一区二区三区| 污片在线观看一区二区| 一区二区三区日韩在线观看| 中文字幕巨乱亚洲| 欧美国产成人精品| 国产色产综合产在线视频| 精品国产乱码久久久久久蜜臀| 欧美日本韩国一区二区三区视频| 色狠狠av一区二区三区| 91小视频在线观看| 99久久亚洲一区二区三区青草| 国产成人鲁色资源国产91色综 | 国产三区在线成人av| 久久―日本道色综合久久| 欧美一区二区三区免费大片| 欧美日韩aaa| 3d动漫精品啪啪1区2区免费| 欧美日韩一级二级| 欧美男生操女生| 337p亚洲精品色噜噜噜| 5566中文字幕一区二区电影| 欧美日韩国产小视频| 欧美久久久一区| 日韩欧美国产一区二区在线播放| 欧美一区二区三区的| 欧美精品一区二区三区高清aⅴ| 欧美大白屁股肥臀xxxxxx| 日韩欧美国产精品一区| 久久久五月婷婷| 中文字幕一区二区三区精华液 | 国产主播一区二区| 国产成人在线观看| 99久久777色| 欧美亚一区二区| 日韩午夜激情av| 久久久www免费人成精品| 国产精品毛片久久久久久| 亚洲欧美另类综合偷拍| 亚洲国产精品麻豆| 国内外精品视频| 9l国产精品久久久久麻豆| 欧美日韩精品欧美日韩精品一综合| 7777精品伊人久久久大香线蕉完整版| 日韩美女一区二区三区四区| 久久综合狠狠综合久久综合88| 国产亚洲成aⅴ人片在线观看| 亚洲人成网站精品片在线观看| 亚洲一级电影视频| 经典三级视频一区| 成人不卡免费av| 制服丝袜亚洲播放| 亚洲国产激情av| 自拍偷拍欧美激情| 91精品国产一区二区人妖| 91视频com| 日韩三级中文字幕| 色欲综合视频天天天| 色综合久久88色综合天天6 | 国产a视频精品免费观看| 91免费版在线| 精品日韩在线一区| 91在线云播放| 韩国三级中文字幕hd久久精品| 美腿丝袜亚洲三区| 激情六月婷婷综合| 国产一区二区三区黄视频 | 99精品视频在线免费观看| 国产精品资源在线| 成人黄色免费短视频| 91美女精品福利| 欧美日韩国产123区| 欧美一区二区免费观在线| 亚洲精品一区二区三区影院| 久久久久国产精品人| 最新热久久免费视频| 亚洲国产综合人成综合网站| 日韩精品一二区| 国产a区久久久| 在线免费一区三区| 日韩精品一区在线观看| 亚洲国产精品激情在线观看| 亚洲一级二级三级在线免费观看| 奇米一区二区三区| 床上的激情91.| 欧美精品123区| 日本一区二区三区四区在线视频| 一二三区精品福利视频| 另类综合日韩欧美亚洲| 成人aaaa免费全部观看| 欧美理论电影在线| 国产亚洲精品免费| 一级特黄大欧美久久久| 欧美96一区二区免费视频| 成人国产精品免费观看| 欧美乱熟臀69xxxxxx| 国产日产欧美一区二区视频| 亚洲午夜精品在线| 成人性生交大合| 91精品国产黑色紧身裤美女| 国产精品毛片久久久久久| 蜜桃久久av一区|