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

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

?? bsskintabs.pas

?? 一套支持Delphi的VCL庫
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
{*******************************************************************}
{                                                                   }
{       Almediadev Visual Component Library                         }
{       BusinessSkinForm                                            }
{       Version 6.15                                                }
{                                                                   }
{       Copyright (c) 2000-2008 Almediadev                          }
{       ALL RIGHTS RESERVED                                         }
{                                                                   }
{       Home:  http://www.almdev.com                                }
{       Support: support@almdev.com                                 }
{                                                                   }
{*******************************************************************}

unit bsSkinTabs;

{$P+,S-,W-,R-}
{$WARNINGS OFF}
{$HINTS OFF}

interface

uses SysUtils, Windows, Messages, Classes, Graphics, Controls, Forms, StdCtrls,
     CommCtrl, ComCtrls, ExtCtrls, bsSkinData, bsSkinBoxCtrls, bsUtils, bsSkinCtrls,
     ImgList;
type

  TbsSkinCustomTabSheet = class(TTabSheet)
  private
    FWallPaper: TBitMap;
  protected
    ButtonRect: TRect;
    ButtonMouseIn, ButtonMouseDown:Boolean;
    procedure CheckControlsBackground;
    procedure WMSize(var Msg: TWMSize); message WM_SIZE;
    procedure WMEraseBkGnd(var Msg: TWMEraseBkGnd); message WM_ERASEBKGND;
    procedure CreateParams(var Params: TCreateParams); override;
    procedure SetWallPaper(Value: TBitmap);
    procedure CMSENCPaint(var Message: TMessage); message CM_SENCPAINT;
  public
    procedure PaintBG(DC: HDC);
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    property WallPaper: TBitMap read FWallPaper write SetWallPaper;
  end;

  TbsSkinTabSheet = class(TbsSkinCustomTabSheet)
  protected
    procedure Notification(AComponent: TComponent; Operation: TOperation); override;
  public
    constructor Create(AOwner : TComponent); override;
    destructor Destroy; override;
  end;


  TbsDrawSkinTabEvent = procedure(TabIndex: Integer; const Rct: TRect; Active,
    MouseIn: Boolean; Cnvs: TCanvas) of object;

  TbsCloseEvent = procedure(Sender: TObject; var CanClose: Boolean) of object;

  TbsSkinPageControl = class(TPageControl)
  private
    //
    FHideTabs: Boolean;
    FOLdTabPosition: TTabPosition;
    FOldMultiLine: Boolean;
    FOldTabHeight: Integer;
    FCloseSize: Integer;
    FOnClose: TbsCloseEvent;
    FOnAfterClose: TNotifyEvent;
    FFreeOnClose: Boolean;
    FIsVistaOS: Boolean;
    FShowCloseButtons: Boolean;
    FTabsBGTransparent: Boolean;
    FActiveTab, FOldActiveTab: Integer;
    FActiveTabIndex, FOldActiveTabIndex: Integer;
    FOnDrawSkinTab: TbsDrawSkinTabEvent;
    //
    FImages: TCustomImageList;
    FTempImages: TCustomImageList;
    function GetCloseSize: Integer;
    procedure SetImages(value: TCustomImageList);
    procedure DrawCloseButton(Cnvs: TCanvas; R: TRect;  I, W, H: Integer);
    //
    procedure SetShowCloseButtons(Value: Boolean);
    function GetPosition: Integer;
    function  GetInVisibleItemCount: Integer;
    procedure OnUpDownChange(Sender: TObject);
    procedure DrawTabs(Cnvs: TCanvas);
    procedure DrawTab(TI: Integer; const Rct: TRect; Active, MouseIn: Boolean; Cnvs: TCanvas);
    function GetItemRect(index: integer): TRect;
    procedure SetItemSize(AWidth, AHeight: integer);
    procedure CheckScroll;
    procedure ShowSkinUpDown;
    procedure HideSkinUpDown;
    procedure TestActive(X, Y: Integer);
    procedure SetTabsBGTransparent(Value: Boolean);
    procedure DrawEmptyBackGround(DC: HDC);
    procedure CMSENCPaint(var Message: TMessage); message CM_SENCPAINT;
    function CheckVisibleTabs: Boolean;
    function GetActiveTabRect: TRect;
  protected
    //
    FSD: TbsSkinData;
    FSkinDataName: String;
    FIndex: Integer;
    FSkinUpDown: TbsSkinUpDown;
    FDefaultFont: TFont;
    FUseSkinFont: Boolean;
    FDefaultItemHeight: Integer;
    CloseButtonRect, ClosebuttonActiveRect, CloseButtonDownRect: TRect;
    ButtonTransparent: Boolean;
    ButtonTransparentColor: TColor;
    procedure SetDefaultItemHeight(Value: Integer);
    procedure SetDefaultFont(Value: TFont);
    procedure Change; override;
    procedure Change2;
    procedure GetSkinData;
    //
    procedure Notification(AComponent: TComponent;
      Operation: TOperation); override;
    procedure SetSkinData(Value: TbsSkinData);
    procedure WMEraseBkGnd(var Msg: TWMEraseBkGnd); message WM_ERASEBKGND;
    procedure WMHSCROLL(var Msg: TWMEraseBkGnd); message WM_HSCROLL;
    procedure WMSize(var Msg: TWMSize); message WM_SIZE;
    procedure PaintDefaultWindow(Cnvs: TCanvas);
    procedure PaintSkinWindow(Cnvs: TCanvas);
    procedure PaintWindow(DC: HDC); override;
    procedure WndProc(var Message:TMessage); override;
    procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
    procedure MouseDown(Button: TMouseButton; Shift: TShiftState;
                        X, Y: Integer); override;
    procedure MouseUp(Button: TMouseButton; Shift: TShiftState;
                        X, Y: Integer); override;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
    procedure WMPaint(var Msg: TWMPaint); message WM_PAINT;
    procedure WMCHECKPARENTBG(var Msg: TWMEraseBkgnd); message WM_CHECKPARENTBG;
    procedure DoClose;
  public
    //
    Picture: TBitMap;
    SkinRect, ClRect, TabRect,
    ActiveTabRect, FocusTabRect, MouseInTabRect: TRect;
    TabsBGRect: TRect;
    LTPoint, RTPoint, LBPoint, RBPoint: TPoint;
    TabLeftOffset, TabRightOffset: Integer;
    FontName: String;
    FontStyle: TFontStyles;
    FontHeight: Integer;
    FontColor, ActiveFontColor, FocusFontColor, MouseInFontColor: TColor;
    UpDown: String;
    BGPictureIndex: Integer;
    TabStretchEffect: Boolean;
    ShowFocus: Boolean;
    FocusOffsetX, FocusOffsetY: Integer;
    StretchEffect, LeftStretch, TopStretch, RightStretch, BottomStretch: Boolean;
    StretchType: TbsStretchType;
    //
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    procedure ChangeSkinData;
    procedure Loaded; override;
    procedure UpDateTabs;
    procedure HideTabs;
    procedure ShowTabs;
  published
    property FreeOnClose: Boolean read FFreeOnClose write FFreeOnClose;
    property ShowCloseButtons: Boolean read FShowCloseButtons write SetShowCloseButtons;
    property Images: TCustomImageList read FImages write SetImages;
    property TabsBGTransparent: Boolean read FTabsBGTransparent write SetTabsBGTransparent;
    property DefaultFont: TFont read FDefaultFont write SetDefaultFont;
    property UseSkinFont: Boolean read FUseSkinFont write FUseSkinFont;
    property DefaultItemHeight: Integer read FDefaultItemHeight write SetDefaultItemHeight;
    property SkinData: TbsSkinData read FSD write SetSkinData;
    property SkinDataName: String read FSkinDataName write FSkinDataName;
    property Color;
    property ActivePage;
    property Align;
    property Anchors;
    property BiDiMode;
    property Constraints;
    property DockSite;
    property DragCursor;
    property DragKind;
    property DragMode;
    property Enabled;
    property Font;
    property HotTrack;
    // property Images;
    property OwnerDraw;
    property ParentBiDiMode;
    property ParentFont;
    property ParentShowHint;
    property PopupMenu;
    property RaggedRight;
    property ScrollOpposite;
    property ShowHint;
    property TabHeight;
    property TabOrder;
    property TabPosition;
    property TabStop;
    property TabWidth;
    property Visible;
    property OnClose: TbsCloseEvent read FOnClose write FOnClose;
    property OnAfterClose: TNotifyEvent read FOnAfterClose write FOnAfterClose;
    property OnChange;
    property OnDrawSkinTab: TbsDrawSkinTabEvent
      read FOnDrawSkinTab write FOnDrawSkinTab; 
    property OnChanging;
    property OnDockDrop;
    property OnDockOver;
    property OnDragDrop;
    property OnDragOver;
    property OnDrawTab;
    property OnEndDock;
    property OnEndDrag;
    property OnEnter;
    property OnExit;
    property OnGetImageIndex;
    property OnGetSiteInfo;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnResize;
    property OnStartDock;
    property OnStartDrag;
    property OnUnDock;
  end;

  TbsRectArray = array of TRect;
  TbsBolArray = array of Boolean;

  TbsCloseEvent2 = procedure(Index: Integer; var CanClose: Boolean) of object;

  TbsSkinTabControl = class(TTabControl)
  private
    FOnClose: TbsCloseEvent2;
    FOnAfterClose: TNotifyEvent;
    TabButtonMouseDown: TbsBolArray;
    TabButtonMouseIn: TbsBolArray;
    TabButtonR: TbsRectArray;
    FCloseSize: Integer;
    FShowCloseButtons: Boolean;
    FTabsBGTransparent: Boolean;
    FOnDrawSkinTab: TbsDrawSkinTabEvent;
    FromWMPaint: Boolean;
    FOldTop, FOldBottom: Integer;
    FActiveTab, FOldActiveTab: Integer;
    //
    FImages: TCustomImageList;
    FTempImages: TCustomImageList;
    //
    procedure DrawCloseButton(Cnvs: TCanvas; R: TRect;  I, W, H: Integer);
    procedure SetShowCloseButtons(Value: Boolean);
    function GetPosition: Integer;
    function  GetInVisibleItemCount: Integer;
    procedure OnUpDownChange(Sender: TObject);
    procedure DrawTabs(Cnvs: TCanvas);
    procedure DrawTab(TI: Integer; const Rct: TRect; Active, MouseIn: Boolean; Cnvs: TCanvas);
    function GetItemRect(index: integer): TRect;
    procedure SetItemSize(AWidth, AHeight: integer);
    procedure CheckScroll;
    procedure ShowSkinUpDown;
    procedure HideSkinUpDown;
    procedure TestActive(X, Y: Integer);
    procedure SetTabsBGTransparent(Value: Boolean);
    procedure SetImages(value: TCustomImageList);
  protected
    //
    FSD: TbsSkinData;
    FSkinDataName: String;
    FIndex: Integer;
    FSkinUpDown: TbsSkinUpDown;
    FDefaultFont: TFont;
    FUseSkinFont: Boolean;
    FDefaultItemHeight: Integer;

    function GetCloseSize: Integer;
    procedure SetDefaultItemHeight(Value: Integer);
    procedure SetDefaultFont(Value: TFont);
    procedure WMSize(var Msg: TWMSize); message WM_SIZE;
    procedure WMPaint(var Msg: TWMPaint); message WM_PAINT;
    procedure GetSkinData;
    //
    procedure Notification(AComponent: TComponent;
      Operation: TOperation); override;
    procedure SetSkinData(Value: TbsSkinData);
    procedure WMEraseBkGnd(var Msg: TWMEraseBkGnd); message WM_ERASEBKGND;
    procedure WMHSCROLL(var Msg: TWMEraseBkGnd); message WM_HSCROLL;
    procedure PaintDefaultWindow(Cnvs: TCanvas);
    procedure PaintSkinWindow(Cnvs: TCanvas);
    procedure PaintWindow(DC: HDC); override;
    procedure WndProc(var Message:TMessage); override;
    procedure Change; override;
    procedure Change2;
    procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
    procedure MouseUp(Button: TMouseButton; Shift: TShiftState;
                        X, Y: Integer); override;
    procedure MouseDown(Button: TMouseButton; Shift: TShiftState;
      X, Y: Integer); override;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
    procedure WMCHECKPARENTBG(var Msg: TWMEraseBkgnd); message WM_CHECKPARENTBG;
    procedure CheckControlsBackground;
    function GetActiveTabRect: TRect;
    procedure DoClose;
  public

    Picture: TBitMap;
    SkinRect, ClRect, TabRect,
    ActiveTabRect, FocusTabRect, MouseInTabRect: TRect;
    TabsBGRect: TRect;
    LTPoint, RTPoint, LBPoint, RBPoint: TPoint;
    TabLeftOffset, TabRightOffset: Integer;
    FontName: String;
    FontStyle: TFontStyles;
    FontHeight: Integer;
    FontColor, ActiveFontColor, FocusFontColor, MouseInFontColor: TColor;
    UpDown: String;
    BGPictureIndex: Integer;
    TabStretchEffect: Boolean;
    StretchEffect, LeftStretch, TopStretch, RightStretch, BottomStretch: Boolean;
    ShowFocus: Boolean;
    FocusOffsetX, FocusOffsetY: Integer;
    StretchType: TbsStretchType;
    CloseButtonRect, ClosebuttonActiveRect, CloseButtonDownRect: TRect;
    ButtonTransparent: Boolean;
    ButtonTransparentColor: TColor;
    //
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    procedure ChangeSkinData;
    procedure Loaded; override;
    procedure UpDateTabs;
    //
    procedure PaintBG(DC: HDC);
    //
  published
    property Images: TCustomImageList read FImages write SetImages;
    property ShowCloseButtons: Boolean read FShowCloseButtons write SetShowCloseButtons;
    property TabsBGTransparent: Boolean read FTabsBGTransparent write SetTabsBGTransparent;
    property DefaultFont: TFont read FDefaultFont write SetDefaultFont;
    property UseSkinFont: Boolean read FUseSkinFont write FUseSkinFont;
    property DefaultItemHeight: Integer read FDefaultItemHeight write SetDefaultItemHeight;
    property SkinData: TbsSkinData read FSD write SetSkinData;
    property SkinDataName: String read FSkinDataName write FSkinDataName;
    property Color;
    property Align;
    property Anchors;
    property BiDiMode;
    property Constraints;
    property DockSite;
    property DragCursor;
    property DragKind;
    property DragMode;
    property Enabled;
    property Font;
    property HotTrack;
    property OwnerDraw;
    property ParentBiDiMode;
    property ParentFont;
    property ParentShowHint;
    property PopupMenu;
    property RaggedRight;
    property ScrollOpposite;
    property ShowHint;
    property TabHeight;
    property TabOrder;
    property TabPosition;
    property TabStop;
    property TabWidth;
    property Visible;
    property OnClose: TbsCloseEvent2 read FOnClose write FOnClose;
    property OnAfterClose: TNotifyEvent read FOnAfterClose write FOnAfterClose;
    property OnDrawSkinTab: TbsDrawSkinTabEvent
      read FOnDrawSkinTab write FOnDrawSkinTab;
    property OnChange;
    property OnChanging;
    property OnDockDrop;
    property OnDockOver;
    property OnDragDrop;
    property OnDragOver;
    property OnDrawTab;
    property OnEndDock;
    property OnEndDrag;
    property OnEnter;
    property OnExit;
    property OnGetImageIndex;
    property OnGetSiteInfo;
    property OnMouseDown;
    property OnMouseMove;
    property OnMouseUp;
    property OnResize;
    property OnStartDock;
    property OnStartDrag;
    property OnUnDock;
  end;

implementation

uses Consts, ComStrs, BusinessSkinForm, bsEffects;

const
  CLOSE_SIZE = 14;

procedure DrawRotate90_1(Cnvs: TCanvas; B: TBitMap; X, Y: Integer);
var
  B1, B2: TbsEffectBmp;
begin
  B1 := TbsEffectBmp.CreateFromhWnd(B.Handle);
  B2 := TbsEffectBmp.Create(B1.Height, B1.Width);
  B1.Rotate90_1(B2);
  B2.Draw(Cnvs.Handle, X, Y);
  B1.Free;
  B2.Free;
end;

procedure DrawFlipVert(B: TBitMap);
var
  B1, B2: TbsEffectBmp;
begin
  B1 := TbsEffectBmp.CreateFromhWnd(B.Handle);
  B2 := TbsEffectBmp.Create(B1.Width, B1.Height);
  B1.FlipVert(B2);
  B2.Draw(B.Canvas.Handle, 0, 0);
  B1.Free;
  B2.Free;
end;

procedure DrawRotate90_2(Cnvs: TCanvas; B: TBitMap; X, Y: Integer);
var
  B1, B2: TbsEffectBmp;
begin
  B1 := TbsEffectBmp.CreateFromhWnd(B.Handle);
  B2 := TbsEffectBmp.Create(B1.Height, B1.Width);
  B1.Rotate90_2(B2);
  B2.Draw(Cnvs.Handle, X, Y);
  B1.Free;
  B2.Free;
end;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品自拍av| 国产mv日韩mv欧美| 韩国v欧美v亚洲v日本v| 经典三级一区二区| 欧美日韩一区三区| 中文字幕巨乱亚洲| 久久国产麻豆精品| 欧美日本一区二区三区四区| 亚洲视频一二三区| 成人av在线观| 国产亚洲一区二区三区在线观看| 亚洲私人影院在线观看| 26uuu亚洲综合色| 亚洲成人免费av| 91视频com| 亚洲国产精品久久久久秋霞影院 | 日韩av中文在线观看| 欧美日韩国产一二三| 色系网站成人免费| 一区二区三区 在线观看视频| 成人午夜av在线| 中文一区在线播放| 国产婷婷一区二区| 国产亚洲欧美日韩日本| 91精品国产手机| 久久99精品久久久久久| 有坂深雪av一区二区精品| 日本黄色一区二区| 亚洲bt欧美bt精品| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 成人一级片在线观看| 成人免费高清视频在线观看| 国产成人精品免费| 日韩国产一二三区| 国产一区二区三区综合| 亚洲综合激情网| 欧美国产日韩在线观看| 国产精品久久久久久久久久久免费看| 一本久道中文字幕精品亚洲嫩| 欧美色视频一区| 国产欧美一区二区精品婷婷| 欧美久久一二三四区| 色婷婷av久久久久久久| 日韩精品一区二区三区中文不卡 | 精品在线视频一区| 在线视频欧美区| www.久久精品| 色综合色综合色综合色综合色综合| 欧美三级电影精品| 1024亚洲合集| 国产精品传媒入口麻豆| 日本视频免费一区| 欧美三级日韩三级| 最新国产成人在线观看| 国产精品99久久久久久久vr| 91福利国产精品| 亚洲精品高清在线| 色av一区二区| 亚洲一区二区视频在线| 在线免费观看日韩欧美| 国产精品久久午夜夜伦鲁鲁| 欧美aⅴ一区二区三区视频| 国产一区二区三区四区五区美女| 91精品黄色片免费大全| 成人av网站在线观看免费| 99久久久久免费精品国产 | 激情国产一区二区| 久久综合久久综合久久综合| 美女尤物国产一区| kk眼镜猥琐国模调教系列一区二区| 久久久久久免费毛片精品| 亚洲精品免费一二三区| 99国产麻豆精品| 亚洲午夜在线电影| 欧美日韩国产a| 国产一区在线精品| 一区二区三区91| 欧美一区二区三区免费大片| 韩国成人福利片在线播放| 国产精品网站在线播放| 天天色图综合网| 日本91福利区| www.66久久| 天天综合网 天天综合色| 在线不卡免费欧美| 免费av网站大全久久| 久久久午夜电影| 欧美日韩久久不卡| 天天做天天摸天天爽国产一区| 国产精品卡一卡二| 欧美一区二区三区在线看| 久久99精品一区二区三区三区| 精品福利视频一区二区三区| 国产成人精品aa毛片| 亚洲国产精品久久久男人的天堂 | 爽好久久久欧美精品| 国产亚洲短视频| 在线视频观看一区| 偷拍亚洲欧洲综合| 国产精品久久久久久久久果冻传媒 | 天堂一区二区在线| 国产精品国产三级国产专播品爱网 | 欧美日韩电影在线| 亚洲一卡二卡三卡四卡无卡久久| 国产成人精品一区二区三区四区| 成人欧美一区二区三区小说| 337p亚洲精品色噜噜狠狠| 成人黄色777网| 国产麻豆午夜三级精品| 美女爽到高潮91| 三级久久三级久久久| 国产高清在线精品| 国产欧美日韩不卡| 欧美日韩一级视频| 欧美视频一区二区在线观看| 精品一区二区三区影院在线午夜 | 成人免费高清在线| 国产成人综合精品三级| 国产综合色在线视频区| 另类小说一区二区三区| 日本免费新一区视频| 免费观看在线综合色| 麻豆精品国产91久久久久久| 日韩一区精品视频| 蜜桃一区二区三区在线| 蜜桃av一区二区| 国产成人aaa| 色婷婷综合久久久久中文一区二区 | 国产精品成人免费精品自在线观看| 欧美大胆一级视频| 国产视频911| 亚洲一卡二卡三卡四卡五卡| 奇米精品一区二区三区四区| 国模套图日韩精品一区二区| 高清视频一区二区| 欧美丰满少妇xxxxx高潮对白| 欧美一卡二卡在线| 成人欧美一区二区三区1314| 一区二区三区在线免费播放| 久99久精品视频免费观看| 不卡视频在线观看| 日韩一卡二卡三卡四卡| 久久久久久久久久久久久女国产乱 | 日韩欧美一区二区在线视频| 久久精品一级爱片| 亚洲国产中文字幕在线视频综合| 久久9热精品视频| 99精品欧美一区| 久久精品亚洲精品国产欧美| 国产精品第13页| 精品系列免费在线观看| 欧美一级二级三级蜜桃| 亚洲日本在线天堂| 99re这里都是精品| 国产精品久久久久一区二区三区| 男人操女人的视频在线观看欧美| 成人免费看视频| 日韩一卡二卡三卡| 天堂在线一区二区| 91精品蜜臀在线一区尤物| 午夜日韩在线观看| 91精品国产一区二区三区香蕉| 亚洲激情av在线| 在线免费不卡视频| 一区二区三区久久| 欧美剧在线免费观看网站| 五月天丁香久久| 久久综合九色综合欧美就去吻 | 精品av久久707| 国产美女娇喘av呻吟久久| 久久久久久久综合日本| 国产999精品久久久久久绿帽| 伊人一区二区三区| 日韩午夜激情视频| 韩国女主播成人在线观看| 欧美国产精品一区二区三区| 国产精品77777竹菊影视小说| 国产亚洲一区二区三区在线观看| 久久99国内精品| **性色生活片久久毛片| 91麻豆文化传媒在线观看| 天涯成人国产亚洲精品一区av| 91精品国产综合久久香蕉的特点| 六月丁香婷婷久久| 一区二区三区欧美亚洲| 久久久噜噜噜久久中文字幕色伊伊 | 欧美成人video| 欧美日韩在线精品一区二区三区激情 | 亚洲色图欧美在线| 91精品国产全国免费观看| 成人亚洲精品久久久久软件| 亚洲影视在线观看| 国产精品久久久久久一区二区三区 | 成人av先锋影音| 国产成人精品三级麻豆| 视频一区欧美精品| 夜夜嗨av一区二区三区四季av| 欧美一级片在线观看| 欧美精品亚洲一区二区在线播放| av一区二区不卡|