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

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

?? xpbutton.pas

?? XP_Buttons for delphi7 絕對(duì)精典的按鈕控件
?? PAS
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
//==============================================================================
//  XPButton.pas
//  Author : SteedSky
//  Modify Data : 2003.08.20
//  E-Mail : SteedSky@163.net
//==============================================================================
unit XPButton;

interface

uses
   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
   ActnList, StdCtrls, ImgList, XPButtonClass, ExtCtrls;

type
  TXPButton = class(TCustomControl)
  private
    FButtonStyle : TButtonStyle ;
    FBorderColor: TColor;
    FBorderDraw : Boolean;
    FCanFocus : Boolean ;
    FCancel : Boolean ;
    FDefault : Boolean ;
    FDragging: Boolean;
    FGradientBeginColor : TColor ;
    FGradientEndColor: TColor;
    FGlyph: TBitmap;
    FKind: TButtonKind;
    FLayout: TButtonLayout;
    FMargin: Integer;
    FMouseInControl: Boolean;
    FModalResult: TModalResult;
    FNumGlyphs: TNumGlyphs;
    FOnMouseEnter: TNotifyEvent;
    FOnMouseLeave: TNotifyEvent;
    FSpacing: Integer;
    FState: TButtonState;
    GlyphPos: TPoint;
    TextBounds: TRect;

    procedure CMEnabledChanged (var Message: TMessage); message CM_ENABLEDCHANGED;
    procedure CMFontChanged (var Message: TMessage); message CM_FONTCHANGED;
    procedure CMTextChanged (var Message: TMessage); message CM_TEXTCHANGED;
    procedure CMSysColorChange (var Message: TMessage); message CM_SYSCOLORCHANGE;
    procedure CMParentColorChanged (var Message: TWMNoParams); message CM_PARENTCOLORCHANGED;
    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
    procedure DoDialogKey(var Message: TCMDialogKey);message CM_DIALOGKEY;
    procedure DoDialogChar(var Message: TCMDialogChar);message CM_DIALOGCHAR;
    procedure DoFocusChanged(var Message: TCMFocusChanged); message CM_FOCUSCHANGED;
    procedure CalcButtonLayout (Canvas: TCanvas; const Client: TRect; const Offset: TPoint; Layout: TButtonLayout; Spacing, Margin: Integer; FGlyph: TBitmap; FNumGlyphs: Integer; const Caption: string; var TextBounds: TRect; var GlyphPos: TPoint);
    procedure DrawFocus(Canvas: TCanvas; ARect: TRect);
    procedure PaintButton(Canvas: TCanvas; ARect: TRect) ;
    procedure RemoveMouseTimer;
    procedure SetCanFocus(Value: Boolean);
    procedure SetKind(Value: TButtonKind);
    procedure SetColors (Value: TColor);
    procedure SetGlyph (Value: TBitmap);
    procedure SetNumGlyphs (Value: TNumGlyphs);
    procedure SetLayout (Value: TButtonLayout);
    procedure SetSpacing (Value: Integer);
    procedure SetMargin (Value: Integer);
    procedure SetGradientBeginColor(const Value: TColor);
    procedure SetGradientEndColor(const Value: TColor);
    procedure SetBorderDraw(const Value: Boolean);
    procedure SetButtonStyle(const Value: TButtonStyle);
    procedure UpdateTracking;
  protected
    procedure ActionChange(Sender: TObject; CheckDefaults: Boolean); override;
    procedure Loaded; override;
    procedure MouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
    procedure MouseMove (Shift: TShiftState; X, Y: Integer); override;
    procedure MouseUp (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
    procedure MouseTimerHandler (Sender: TObject);
    procedure Paint; override;
    function IsCustom: Boolean;
    function GetPalette: HPALETTE; override;
    procedure Click; override;
    procedure WndProc(var Message: TMessage); override;
  public
    constructor Create (AOwner: TComponent); override;
    destructor Destroy; override;
    procedure MouseEnter;
    procedure MouseLeave;
  published
    property Action;
    property Anchors;
    property BiDiMode;
    property BorderColor: TColor read FBorderColor write SetColors default $008396A0;
    property BorderDraw: Boolean read FBorderDraw write SetBorderDraw ;
    property ButtonStyle: TButtonStyle read FButtonStyle write SetButtonStyle ;
    property Constraints;
    property Color ;
    property Caption;
    property CanDrawFocus: Boolean read FCanFocus write SetCanFocus default True;
    property Cancel: Boolean read FCancel write FCancel default False;
    property Default: Boolean read FDefault write FDefault default False;
    property DragKind;
    property Enabled;
    property Font;
    property GradientBeginColor: TColor read FGradientBeginColor write SetGradientBeginColor default clWhite;
    property GradientEndColor: TColor read FGradientEndColor write SetGradientEndColor default clSilver;
    property Glyph: TBitmap read FGlyph write SetGlyph stored IsCustom;
    property Kind: TButtonKind read FKind write SetKind default bkCustom;
    property Layout: TButtonLayout read FLayout write SetLayout default blGlyphLeft;
    property Margin: Integer read FMargin write SetMargin default -1;
    property ModalResult: TModalResult read FModalResult write FModalResult stored IsCustom default 0;
    property NumGlyphs: TNumGlyphs read FNumGlyphs write SetNumGlyphs default 1;
    property ParentFont;
    property ParentColor;
    property ParentShowHint;
    property PopupMenu;
    property ParentBiDiMode;
    property ShowHint;
    property Spacing: Integer read FSpacing write SetSpacing default 4;
    property TabOrder;
    property TabStop default True;
    property Visible;

    property OnClick;
    property OnEndDock;
    property OnEnter;
    property OnExit;
    property OnKeyDown;
    property OnKeyPress;
    property OnKeyUp;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnMouseEnter: TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
    property OnMouseLeave: TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
    property OnStartDock;
  end;

var
  MouseInControl: TXPButton = nil;

procedure Register;

implementation

var
  MouseTimer: TTimer = nil;
  ControlCounter: Integer = 0;

procedure Register;
begin
   RegisterComponents('JxcVCL', [TXPButton]);
end;

constructor TXPButton.Create(aOwner: TComponent);
begin
  inherited Create(AOwner);
  if MouseTimer = nil then
  begin
    MouseTimer := TTimer.Create(nil);
    MouseTimer.Enabled := False;
    MouseTimer.Interval := 100; // 10 times a second
  end;
  SetBounds(0, 0, 25, 25);
  ControlStyle := [csCaptureMouse, csDoubleClicks];
  Caption := 'XPButton' ;
  FGlyph := TBitmap.Create;
  FKind := bkCustom;
  FNumGlyphs := 1;
  Width := 75;
  Height := 30;
  Font.Charset := GB2312_CHARSET;
  Font.Color := clWindowText;
  Font.Height := -12;
  Font.Name := '宋體';
  Font.Style := [];
  ParentFont := False;
  ParentColor := False;
  FBorderColor := $008396A0;
  Color := clBtnFace ;
  FSpacing := 4;
  FMargin := -1;
  FLayout := blGlyphLeft;
  FModalResult := mrNone;
  Inc(ControlCounter);
  FGradientBeginColor := clWhite;
  FGradientEndColor := clSilver;
  TabStop := True;
  FDefault := False;
  FCancel := False;
  FCanFocus := True ;
  FBorderDraw := True ;
  FButtonStyle := bsGradient ;
end;

destructor TXPButton.Destroy;
begin
  RemoveMouseTimer;
  FGlyph.Free;
  Dec(ControlCounter);
  if ControlCounter = 0 then
  begin
    MouseTimer.Free;
    MouseTimer := nil;
  end;
  inherited Destroy;
end;

procedure TXPButton.UpdateTracking;
var
  P: TPoint;
begin
  if Enabled then
  begin
    GetCursorPos(P);
    FMouseInControl := not (FindDragTarget(P, True) = Self);
    if FMouseInControl then
      MouseLeave
    else
      MouseEnter;
  end;
end;

procedure TXPButton.Loaded;
begin
  inherited Loaded;
  Invalidate;
end;

procedure TXPButton.MouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
  inherited MouseDown(Button, Shift, X, Y);
  if (Button = mbLeft) and Enabled then begin
     FState := bsDown;
     FDragging := True;
     SetFocus;
     Invalidate;
  end;
end;

procedure TXPButton.MouseMove (Shift: TShiftState; X, Y: Integer);
var
  NewState: TButtonState;
  P: TPoint;
begin
  inherited;
  P := ClientToScreen(Point(X, Y));
  if (MouseInControl <> Self) and (FindDragTarget(P, True) = Self) then
  begin
    if Assigned(MouseInControl) then
      MouseInControl.MouseLeave;
    if (GetActiveWindow <> 0) then
    begin
      if MouseTimer.Enabled then
        MouseTimer.Enabled := False;
      MouseInControl := Self;
      MouseTimer.OnTimer := MouseTimerHandler;
      MouseTimer.Enabled := True;
      MouseEnter;
    end;
  end;

  if FDragging then
  begin
    NewState := bsUp ;
    if (X >= 0) and (X < ClientWidth) and (Y >= 0) and (Y <= ClientHeight) then
       NewState := bsDown;
    if NewState <> FState then begin
      FState := NewState;
      Invalidate;
    end;
  end;
end;

procedure TXPButton.MouseUp (Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
  DoClick: Boolean;
begin
  inherited MouseUp(Button, Shift, X, Y);
  if FDragging then begin
     FDragging := False;
     DoClick := (X >= 0) and (X < ClientWidth) and (Y >= 0) and (Y <= ClientHeight) ;
     FState := bsUp;
     FMouseInControl := False;
     Invalidate ;
     if DoClick then Click else MouseLeave;
     UpdateTracking;
  end;
end;

procedure TXPButton.Click;
var
  Form: TCustomForm;
  Control: TControl;
begin
  case FKind of
    bkClose:
      begin
        Form := GetParentForm(Self);
        if Form <> nil then Form.Close
        else inherited Click;
      end;
    bkHelp:
      begin
        Control := Self;
        while (Control <> nil) and (Control.HelpContext = 0) do
          Control := Control.Parent;
        if Control <> nil then Application.HelpContext(Control.HelpContext)
        else inherited Click;
      end;
    else
      begin
        Form := GetParentForm(Self);
        if Form <> nil then Form.ModalResult := ModalResult;
        inherited Click;
      end;
  end;
//  Invalidate;
end;

function TXPButton.GetPalette: HPALETTE;
begin
  Result := FGlyph.Palette;
end;

procedure TXPButton.SetColors (Value: TColor);
begin

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产另类精品专区| 大胆欧美人体老妇| 国产美女av一区二区三区| av在线一区二区| 日韩免费一区二区三区在线播放| 久久久亚洲欧洲日产国码αv| 亚洲午夜一二三区视频| 成人综合婷婷国产精品久久 | 精品影视av免费| 在线观看精品一区| 国产精品情趣视频| 国产在线看一区| 欧美一卡2卡三卡4卡5免费| 亚洲激情av在线| 成人动漫一区二区| 精品免费视频.| 蜜臀久久99精品久久久画质超高清 | 亚洲成av人片一区二区三区| 99精品视频在线观看| 久久精品欧美日韩| 精品一区二区三区视频在线观看| 欧美视频日韩视频在线观看| 亚洲伦理在线免费看| caoporn国产精品| 欧美国产一区二区| 风流少妇一区二区| 国产亚洲短视频| 欧美aaaaaa午夜精品| 91精品一区二区三区在线观看| 夜夜嗨av一区二区三区网页 | 波多野结衣视频一区| 国产区在线观看成人精品| 国产最新精品精品你懂的| 欧美大片日本大片免费观看| 日韩在线播放一区二区| 欧美日韩一区久久| 亚洲福利国产精品| 欧美久久久一区| 三级精品在线观看| 欧美一区二区视频在线观看2020 | 日韩一区二区三区三四区视频在线观看| 亚洲精品视频自拍| 欧美三级电影在线观看| 日韩福利电影在线观看| 日韩一区二区精品| 精品一区二区三区视频| 日本一区二区综合亚洲| 成人国产一区二区三区精品| 中文字幕中文在线不卡住| 97超碰欧美中文字幕| 亚洲午夜激情网页| 精品卡一卡二卡三卡四在线| 国产乱人伦精品一区二区在线观看| 国产亚洲欧洲一区高清在线观看| 成人福利在线看| 亚洲美女免费在线| 欧美一级欧美一级在线播放| 国产一区二区免费看| 中文字幕在线观看一区二区| 欧美色图在线观看| 国产一区二区三区久久久| 国产精品久线观看视频| 欧美日韩精品三区| 国产一区二区三区在线观看免费视频| 久久久久88色偷偷免费| 欧洲色大大久久| 日韩激情一区二区| 国产精品美女久久久久久久久| 色综合天天综合网国产成人综合天 | 亚洲欧美一区二区三区极速播放| 国产成人久久精品77777最新版本| 亚洲男人的天堂网| 欧美mv日韩mv国产网站app| 成人激情免费视频| 日韩av一级片| 国产精品情趣视频| 欧美一二三区精品| 一本色道久久综合精品竹菊| 久久精品国产久精国产| 亚洲欧美国产三级| 2023国产精品自拍| 欧美亚洲一区二区在线观看| 国内外精品视频| 亚洲成人精品在线观看| 国产精品国产三级国产aⅴ原创 | 国内精品久久久久影院色| 最新国产精品久久精品| 91精品国产综合久久精品图片| 国产福利一区二区三区视频在线 | 日韩一区二区电影| 欧美在线观看视频一区二区三区| 国产乱子伦一区二区三区国色天香| 亚洲一区二区三区视频在线播放| 国产日产精品一区| 26uuu国产在线精品一区二区| 在线观看国产日韩| eeuss鲁片一区二区三区在线观看| 蜜臀久久99精品久久久久宅男 | 麻豆精品视频在线观看| 亚洲第一搞黄网站| 国产精品美女久久久久av爽李琼 | 国产一区二区三区国产| 日韩国产精品91| 亚洲动漫第一页| 樱花影视一区二区| 中文字幕一区二区三区在线播放| 2017欧美狠狠色| 精品国产3级a| 精品久久久久久久人人人人传媒| 欧美二区乱c少妇| 欧美伊人久久久久久久久影院 | 日韩欧美亚洲国产精品字幕久久久| 欧美性猛交xxxx乱大交退制版| 99久久精品国产观看| av动漫一区二区| www.日本不卡| 91影院在线免费观看| 99久久精品一区二区| 不卡欧美aaaaa| 91网上在线视频| 91碰在线视频| 欧美性色综合网| 欧美美女直播网站| 884aa四虎影成人精品一区| 欧美日韩黄色影视| 欧美肥妇bbw| 欧美电影免费观看高清完整版在线| 91精品国产欧美一区二区| 日韩精品一区二区三区四区| 久久精品亚洲麻豆av一区二区 | 成人精品视频一区| 97久久精品人人爽人人爽蜜臀| 91色porny蝌蚪| 欧美日韩国产综合一区二区| 欧美一区二区三区电影| 久久久久久99精品| 亚洲色图欧美激情| 天堂av在线一区| 蜜臀av一区二区在线免费观看| 全部av―极品视觉盛宴亚洲| 国产高清无密码一区二区三区| av亚洲精华国产精华| 欧美日本一区二区| 久久看人人爽人人| 亚洲韩国一区二区三区| 午夜不卡在线视频| 国产剧情一区二区| 欧美亚洲综合网| 精品国产免费久久| 亚洲色图欧洲色图| 精一区二区三区| 不卡av在线免费观看| 欧美丰满少妇xxxbbb| 日本一区二区三级电影在线观看| 亚洲日本丝袜连裤袜办公室| 午夜伊人狠狠久久| 丁香婷婷深情五月亚洲| 欧美另类z0zxhd电影| 久久精品日产第一区二区三区高清版| 亚洲欧美在线视频观看| 蜜臀久久久99精品久久久久久| 成人av在线一区二区| 91精品国产色综合久久久蜜香臀| 国产精品丝袜一区| 免费在线观看视频一区| 91在线你懂得| 久久色在线观看| 天天操天天干天天综合网| 成人ar影院免费观看视频| 日韩久久精品一区| 亚洲1区2区3区视频| 成人午夜伦理影院| 亚洲精品一区二区三区影院| 亚洲综合清纯丝袜自拍| 成人激情黄色小说| 亚洲精品在线观看网站| 日韩制服丝袜av| 在线观看一区不卡| 中文字幕一区二区三区av| 国产精品影音先锋| 日韩一级二级三级| 亚洲成人高清在线| 91福利在线播放| 中文字幕亚洲成人| 成人小视频在线观看| 精品国产乱码久久久久久图片| 亚洲国产精品一区二区久久| jlzzjlzz欧美大全| 中文字幕国产精品一区二区| 国产精品一区二区视频| 在线综合+亚洲+欧美中文字幕| 亚洲午夜电影网| 欧美在线999| 玉米视频成人免费看| 欧洲一区二区av| 亚洲人成网站色在线观看| www.欧美.com| 亚洲女与黑人做爰| 国产乱码精品1区2区3区| 精品99一区二区|