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

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

?? tflatmemounit.pas

?? 貨代程序
?? PAS
字號:
unit TFlatMemoUnit;

interface

{$I DFS.inc}

uses
  Windows, Messages, Classes, Controls, Forms, Graphics, StdCtrls, FlatUtilitys;

type
  TFlatMemo = class(TCustomMemo)
  private
    FUseAdvColors: Boolean;
    FAdvColorFocused: TAdvColors;
    FAdvColorBorder: TAdvColors;
    FParentColor: Boolean;
    FFocusedColor: TColor;
    FBorderColor: TColor;
    FFlatColor: TColor;
    MouseInControl: Boolean;
    procedure SetColors (Index: Integer; Value: TColor);
    procedure SetAdvColors (Index: Integer; Value: TAdvColors);
    procedure SetUseAdvColors (Value: Boolean);
    procedure SetParentColor (Value: Boolean);
    procedure CMEnabledChanged (var Message: TMessage); message CM_ENABLEDCHANGED;
    procedure CMMouseEnter (var Message: TMessage); message CM_MOUSEENTER;
    procedure CMMouseLeave (var Message: TMessage); message CM_MOUSELEAVE;
    procedure WMSetFocus (var Message: TWMSetFocus); message WM_SETFOCUS;
    procedure WMKillFocus (var Message: TWMKillFocus); message WM_KILLFOCUS;
    procedure WMNCCalcSize (var Message: TWMNCCalcSize); message WM_NCCALCSIZE;
    procedure WMNCPaint (var Message: TMessage); message WM_NCPAINT;
    procedure CMSysColorChange (var Message: TMessage); message CM_SYSCOLORCHANGE;
    procedure CMParentColorChanged (var Message: TWMNoParams); message CM_PARENTCOLORCHANGED;
  protected
    procedure CalcAdvColors;
    procedure RedrawBorder (const Clip: HRGN);
  public
    constructor Create (AOwner: TComponent); override;
  published
    property ColorFocused: TColor index 0 read FFocusedColor write SetColors default clWhite;
    property ColorBorder: TColor index 1 read FBorderColor write SetColors default $008396A0;
    property ColorFlat: TColor index 2 read FFlatColor write SetColors default $00E1EAEB;
    property ParentColor: Boolean read FParentColor write SetParentColor default false;
    property AdvColorFocused: TAdvColors index 0 read FAdvColorFocused write SetAdvColors default 10;
    property AdvColorBorder: TAdvColors index 1 read FAdvColorBorder write SetAdvColors default 50;
    property UseAdvColors: Boolean read FUseAdvColors write SetUseAdvColors default false;
    property Align;
    property Alignment;
    property DragCursor;
    property DragMode;
    property Enabled;
    property Font;
    property HideSelection;
    property MaxLength;
    property OEMConvert;
    property ParentFont;
    property ParentShowHint;
    property PopupMenu;
    property ReadOnly;
    property ShowHint;
    property ScrollBars;
    property TabOrder;
    property TabStop;
    property Visible;
    property Lines;
    property WantReturns;
    property WantTabs;
    property WordWrap;

    property OnChange;
    property OnClick;
    property OnDblClick;
    property OnDragDrop;
    property OnDragOver;
    property OnEndDrag;
    property OnEnter;
    property OnExit;
    property OnKeyDown;
    property OnKeyPress;
    property OnKeyUp;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnStartDrag;
   {$IFDEF DFS_DELPHI_4_UP}
    property Anchors;
    property BiDiMode;
    property Constraints;
    property DragKind;
    property ParentBiDiMode;
    property OnEndDock;
    property OnStartDock;
   {$ENDIF}
  end;

implementation

constructor TFlatMemo.Create (AOwner: TComponent);
begin
  inherited;
  ParentFont := True;
  FFocusedColor := clWhite;
  FBorderColor := $008396A0;
  FFlatColor := $00E1EAEB;
  FParentColor := True;
  AutoSize := False;
  Ctl3D := False;
  BorderStyle := bsNone;
  ControlStyle := ControlStyle - [csFramed];
  SetBounds(0, 0, 185, 89);
  FUseAdvColors := false;
  FAdvColorFocused := 10;
  FAdvColorBorder := 50;
end;

procedure TFlatMemo.SetParentColor (Value: Boolean);
begin
  if Value <> FParentColor then
  begin
    FParentColor := Value;
    if FParentColor then
    begin
      if Parent <> nil then
        FFlatColor := TForm(Parent).Color;
      RedrawBorder(0);
    end;
  end;
end;

procedure TFlatMemo.CMSysColorChange (var Message: TMessage);
begin
  if FUseAdvColors then
  begin
    if Parent <> nil then
      FFlatColor := TForm(Parent).Color;
    CalcAdvColors;
  end
  else
    if FParentColor then
    begin
      if Parent <> nil then
        FFlatColor := TForm(Parent).Color;
    end;
  RedrawBorder(0);
end;

procedure TFlatMemo.CMParentColorChanged (var Message: TWMNoParams);
begin
  if FUseAdvColors then
  begin
    if Parent <> nil then
      FFlatColor := TForm(Parent).Color;
    CalcAdvColors;
  end
  else
    if FParentColor then
    begin
      if Parent <> nil then
        FFlatColor := TForm(Parent).Color;
    end;
  RedrawBorder(0);
end;

procedure TFlatMemo.SetColors (Index: Integer; Value: TColor);
begin
  case Index of
    0: FFocusedColor := Value;
    1: FBorderColor := Value;
    2: FFlatColor := Value;
  end;
  if Index = 2 then
    FParentColor := False;
  RedrawBorder(0);
end;

procedure TFlatMemo.CalcAdvColors;
begin
  if FUseAdvColors then
  begin
    FFocusedColor := CalcAdvancedColor(FFlatColor, FFocusedColor, FAdvColorFocused, lighten);
    FBorderColor := CalcAdvancedColor(FFlatColor, FBorderColor, FAdvColorBorder, darken);
  end;
end;

procedure TFlatMemo.SetAdvColors (Index: Integer; Value: TAdvColors);
begin
  case Index of
    0: FAdvColorFocused := Value;
    1: FAdvColorBorder := Value;
  end;
  if FUseAdvColors then
  begin
    CalcAdvColors;
    RedrawBorder(0);
  end;
end;

procedure TFlatMemo.SetUseAdvColors (Value: Boolean);
begin
  if Value <> FUseAdvColors then
  begin
    FUseAdvColors := Value;
    ParentColor := Value;
    CalcAdvColors;
    RedrawBorder(0);
  end;
end;

procedure TFlatMemo.CMMouseEnter (var Message: TMessage);
begin
  inherited;
  if (GetActiveWindow <> 0) then
  begin
    MouseInControl := True;
    RedrawBorder(0);
  end;
end;

procedure TFlatMemo.CMMouseLeave (var Message: TMessage);
begin
  inherited;
  MouseInControl := False;
  RedrawBorder(0);
end;

procedure TFlatMemo.CMEnabledChanged (var Message: TMessage);
const
  EnableColors: array[Boolean] of TColor = (clBtnFace, clWindow);
begin
  inherited;
  Color := EnableColors[Enabled];
  RedrawBorder(0);
end;

procedure TFlatMemo.WMSetFocus (var Message: TWMSetFocus);
begin
  inherited;
  if not(csDesigning in ComponentState) then
    RedrawBorder(0);
end;

procedure TFlatMemo.WMKillFocus (var Message: TWMKillFocus);
begin
  inherited;
  if not(csDesigning in ComponentState) then
    RedrawBorder(0);
end;

procedure TFlatMemo.WMNCCalcSize (var Message: TWMNCCalcSize);
begin
  inherited;
  InflateRect(Message.CalcSize_Params^.rgrc[0], -3, -3);
end;

procedure TFlatMemo.WMNCPaint (var Message: TMessage);
begin
  inherited;
  RedrawBorder(HRGN(Message.WParam));
end;

procedure TFlatMemo.RedrawBorder (const Clip: HRGN);
var
  DC: HDC;
  R: TRect;
  BtnFaceBrush, WindowBrush, FocusBrush: HBRUSH;
begin
  DC := GetWindowDC(Handle);
  try
    GetWindowRect(Handle, R);
    OffsetRect(R, -R.Left, -R.Top);
    BtnFaceBrush := CreateSolidBrush(ColorToRGB(FBorderColor));
    WindowBrush := CreateSolidBrush(ColorToRGB(FFlatColor));
    FocusBrush := CreateSolidBrush(ColorToRGB(FFocusedColor));

    if (not(csDesigning in ComponentState) and
      (Focused or (MouseInControl and not(Screen.ActiveControl is TFlatMemo)))) then
    begin
      { Focus }
      Color := FFocusedColor;
      FrameRect(DC, R, BtnFaceBrush);
      InflateRect(R, -1, -1);
      FrameRect(DC, R, FocusBrush);
      InflateRect(R, -1, -1);
      FrameRect(DC, R, FocusBrush);
      if ScrollBars = ssBoth then
        FillRect(DC, Rect(R.Right - 17, R.Bottom - 17, R.Right - 1, R.Bottom - 1), FocusBrush);
    end
    else
    begin
      { non Focus }
      Color := FFlatColor;
      FrameRect(DC, R, BtnFaceBrush);
      InflateRect(R, -1, -1);
      FrameRect(DC, R, WindowBrush);
      InflateRect(R, -1, -1);
      FrameRect(DC, R, WindowBrush);
      if ScrollBars = ssBoth then
        FillRect(DC, Rect(R.Right - 17, R.Bottom - 17, R.Right - 1, R.Bottom - 1), WindowBrush);
    end;
  finally
    ReleaseDC(Handle, DC);
  end;
  DeleteObject(WindowBrush);
  DeleteObject(BtnFaceBrush);
  DeleteObject(FocusBrush);
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品情趣视频| 激情五月激情综合网| 成人av在线资源| 日韩欧美中文一区| 亚洲精品欧美在线| 99精品1区2区| 五月婷婷综合网| 日韩美女一区二区三区四区| 日韩**一区毛片| 精品国精品国产| 高清shemale亚洲人妖| 国产精品久久久久久久久免费相片| 国产不卡高清在线观看视频| 国产精品卡一卡二| 精品视频在线看| 久久国产欧美日韩精品| 国产精品麻豆欧美日韩ww| 91精品91久久久中77777| 亚洲超丰满肉感bbw| 欧美精品一区二区三区蜜桃| 欧美二区乱c少妇| 国产激情一区二区三区四区 | 亚洲三级电影网站| 欧美色视频在线观看| 国产精品一区二区在线观看网站| 亚洲欧美视频一区| 久久综合99re88久久爱| 色综合天天综合网天天狠天天| 亚洲电影一级片| 成人欧美一区二区三区视频网页| 91超碰这里只有精品国产| 国产麻豆成人精品| 亚洲国产成人porn| 中文字幕一区二区三| 亚洲精品一区二区三区蜜桃下载 | 欧美日韩国产大片| av网站一区二区三区| 盗摄精品av一区二区三区| 久久精品二区亚洲w码| 亚洲永久精品大片| 一区二区三区欧美亚洲| 国产精品传媒在线| 国产精品电影一区二区三区| 国产精品女主播av| 国产亚洲精品精华液| 久久久久久黄色| 国产日韩精品一区二区三区在线| 精品999在线播放| 久久久国产一区二区三区四区小说 | 337p粉嫩大胆噜噜噜噜噜91av | 欧美日韩一级二级| 91成人看片片| 欧美日韩精品一区二区三区蜜桃 | 亚洲第一福利一区| 秋霞午夜av一区二区三区| 婷婷成人综合网| 麻豆国产精品777777在线| 国产在线日韩欧美| 成人午夜精品一区二区三区| jlzzjlzz亚洲日本少妇| 欧美日韩中文字幕精品| 色94色欧美sute亚洲13| 欧美视频精品在线观看| 欧美一级片在线| 国产日本欧美一区二区| 亚洲欧美一区二区三区极速播放| 亚洲影视在线播放| 精品一区二区影视| aa级大片欧美| 91精品综合久久久久久| 国产精品久久久久aaaa| 午夜一区二区三区视频| 国产美女精品在线| 欧美日韩你懂得| 国产视频不卡一区| 天涯成人国产亚洲精品一区av| 国产精品系列在线观看| 6080国产精品一区二区| 国产精品免费aⅴ片在线观看| 亚洲成a人片在线观看中文| caoporn国产精品| 久久亚洲精华国产精华液| 亚洲精品成人在线| 99在线精品视频| 日本一区二区视频在线| 美女精品自拍一二三四| 精品视频在线视频| 亚洲制服欧美中文字幕中文字幕| 国产精品一二三在| 精品欧美黑人一区二区三区| 日韩综合一区二区| 国产精品理论片| 国产成人免费视频网站| 久久夜色精品国产噜噜av| 免费成人在线网站| 欧美不卡一区二区三区| 理论片日本一区| 欧美不卡视频一区| 久久99精品国产麻豆婷婷 | 91丨porny丨最新| 亚洲国产精品一区二区www在线| 国产91精品一区二区麻豆网站| 久久综合av免费| 丰满少妇在线播放bd日韩电影| 久久精品一区二区| 99国产精品国产精品毛片| 亚洲精品综合在线| 在线视频观看一区| 日韩有码一区二区三区| 欧美大肚乱孕交hd孕妇| 国产老女人精品毛片久久| 成人欧美一区二区三区视频网页| 在线一区二区三区四区| 日本欧美久久久久免费播放网| 久久久久久久精| 欧美色欧美亚洲另类二区| 久久精品国产精品亚洲红杏| 亚洲同性gay激情无套| 欧美精品日韩综合在线| 成人午夜精品在线| 日韩一区精品视频| 国产欧美综合色| 欧美日韩一区二区三区免费看| 国产精品一区二区果冻传媒| 亚洲综合免费观看高清在线观看| 日韩午夜在线观看| 91视频免费看| 国产在线精品一区二区不卡了| 一色屋精品亚洲香蕉网站| 精品伦理精品一区| 欧美人狂配大交3d怪物一区| www.亚洲人| 成人高清伦理免费影院在线观看| 日韩电影一区二区三区四区| 1区2区3区国产精品| 精品88久久久久88久久久| 欧美日韩三级一区二区| 色婷婷综合久久久中文字幕| 奇米精品一区二区三区在线观看一| 国产精品一区三区| 亚洲444eee在线观看| 美女精品自拍一二三四| 成人自拍视频在线| 欧美在线观看视频一区二区三区| 欧美日韩国产色站一区二区三区| 色乱码一区二区三区88| www..com久久爱| 97se亚洲国产综合自在线| 色婷婷亚洲婷婷| 欧美人妇做爰xxxⅹ性高电影| 欧美理论片在线| 欧美r级电影在线观看| 26uuu另类欧美| 国产精品国产三级国产普通话蜜臀 | 日本aⅴ免费视频一区二区三区| 国模冰冰炮一区二区| 99综合电影在线视频| 欧美精品色综合| 欧美国产激情一区二区三区蜜月| 亚洲第四色夜色| 国产精品亚洲一区二区三区在线| 欧洲亚洲精品在线| 久久久久久久久免费| 日本在线观看不卡视频| 色综合久久综合网欧美综合网| 久久婷婷国产综合国色天香| 亚洲综合久久久久| 国产91丝袜在线观看| 欧美精品一区二区久久婷婷| 亚洲综合视频在线| 成人黄动漫网站免费app| 日韩写真欧美这视频| 天堂av在线一区| 欧洲视频一区二区| 自拍偷拍亚洲综合| 中文字幕不卡在线观看| www国产精品av| 老司机精品视频线观看86| 日韩午夜小视频| 国产乱理伦片在线观看夜一区| 欧美国产丝袜视频| av网站一区二区三区| 亚洲精品一二三| 精品视频123区在线观看| 天天色 色综合| 欧美一区二区三区男人的天堂| 天天影视网天天综合色在线播放| 日韩一区二区三免费高清| 久久99久久99小草精品免视看| 日韩欧美美女一区二区三区| 国产在线观看免费一区| 国产亚洲精品aa| 91理论电影在线观看| 亚洲一二三级电影| 精品国产污网站| 99精品视频中文字幕| 欧美a级一区二区| 最新国产精品久久精品| 欧美午夜片在线看| 国产精品99久久久久久似苏梦涵|