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

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

?? businessskinform.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 BusinessSkinForm;


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


interface

uses
  Windows, Messages, Classes, Graphics, Controls, Forms,
  ExtCtrls, bsSkinData, Menus, bsSkinMenus, bsSkinCtrls, bsUtils, bsSkinTabs,
  bsSkinBoxCtrls, bsTrayIcon, bsSkinHint, bsSkinExCtrls;

type

  TbsBorderIcon = (biSystemMenu, biMinimize, biMaximize, biRollUp, biMinimizeToTray);
  TbsBorderIcons = set of TbsBorderIcon;

  TbsCaptionPaintEvent = procedure (Cnvs: TCanvas; R: TRect; AActive: Boolean) of object;

  TbsPaintEvent = procedure (IDName: String; Canvas: TCanvas;
                           ObjectRect: TRect) of object;
  TbsMouseEnterEvent= procedure (IDName: String) of object;
  TbsMouseLeaveEvent = procedure (IDName: String) of object;

  TbsMouseUpEvent = procedure (IDName: String;
                             X, Y: Integer; ObjectRect: TRect;
                             Button: TMouseButton) of object;
  TbsMouseDownEvent = procedure (IDName: String;
                               X, Y: Integer; ObjectRect: TRect;
                               Button: TMouseButton) of object;
  TbsMouseMoveEvent = procedure (IDName: String; X, Y: Integer;
                               ObjectRect: TRect) of object;

  TbsActivateCustomObjectEvent = procedure (IDName: String; var ObjectVisible: Boolean) of object;

  TbsBusinessSkinForm = class;


  TbsSkinComponent = class (TComponent)
  protected
    FSkinData: TbsSkinData;
    procedure SetSkinData(Value: TbsSkinData); virtual;
    procedure Notification(AComponent: TComponent;
      Operation: TOperation); override;
  public
    constructor Create(AOwner: TComponent); override;
    procedure BeforeChangeSkinData; virtual;
    procedure ChangeSkinData; virtual;
  published
    property SkinData: TbsSkinData read FSkinData write SetSkinData;
  end;

  TbsActiveSkinObject = class(TObject)
  protected
    Parent: TbsBusinessSkinForm;
    FMorphKf: Double;
    FMouseIn: Boolean;
    Picture, ActivePicture: TBitMap;
    procedure SetMorphKf(Value: Double);
    procedure Redraw;
  public
    SD: TbsSkinData;
    IDName: String;
    Hint: String;
    SkinRect: TRect;
    ActiveSkinRect: TRect;
    InActiveSkinRect: TRect;
    ObjectRect: TRect;
    Active: Boolean;
    Morphing: Boolean;
    MorphKind: TbsMorphKind;
    Enabled: Boolean;
    Visible: Boolean;
    SkinRectInAPicture: Boolean;
    function EnableMorphing: Boolean; 
    function CanMorphing: Boolean; virtual;
    procedure DoMorphing;
    property MorphKf: Double read FMorphKf write SetMorphKf;
    constructor Create(AParent: TbsBusinessSkinForm; AData: TbsDataSkinObject);
    procedure Draw(Cnvs: TCanvas; UpDate: Boolean); virtual;
    procedure DblClick; virtual;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); virtual;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); virtual;
    procedure MouseMove(X, Y: Integer); virtual;
    procedure MouseEnter; virtual;
    procedure MouseLeave; virtual;
  end;

  TbsSkinAnimateObject = class(TbsActiveSkinObject)
  protected
    FFrame: Integer;
    FInc: Integer;
    TimerInterval: Integer;
    MenuItem: TMenuItem;
    FPopupUp: Boolean;
    FDown: Boolean;
    FMenuTracking: Boolean;
    procedure SetFrame(Value: Integer);
    procedure DoMinToTray;
    procedure DoMax;
    procedure DoMin;
    procedure DoRollUp;
    procedure DoClose;
    procedure DoCommand;
    procedure TrackMenu;
  public
    CountFrames: Integer;
    Cycle: Boolean;
    ButtonStyle: Boolean;
    Increment: Boolean;
    Command: TbsStdCommand;
    DownSkinRect: TRect;
    RestoreRect, RestoreActiveRect, RestoreInActiveRect,
    RestoreDownRect: TRect;
    procedure ChangeFrame;
    procedure Start;
    procedure Stop;
    constructor Create(AParent: TbsBusinessSkinForm;
      AData: TbsDataSkinObject);
    procedure DblCLick; override;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); override;
    property Frame: Integer read FFrame write SetFrame;
    procedure Draw(Cnvs: TCanvas; UpDate: Boolean); override;
    procedure MouseEnter; override;
    procedure MouseLeave; override;
  end;

  TbsUserObject = class(TbsActiveSkinObject)
  public
    procedure Draw(Cnvs: TCanvas; UpDate: Boolean); override;
  end;

  TbsSkinButtonObject = class(TbsActiveSkinObject)
  protected
    FDown: Boolean;
    FPopupUp: Boolean;
    procedure SetDown(Value: Boolean);
    procedure TrackMenu;
  public
    DisableSkinRect: TRect;
    DownRect: TRect;
    MenuItem: TMenuItem;
    constructor Create(AParent: TbsBusinessSkinForm;
      AData: TbsDataSkinObject);
    property Down: Boolean read FDown write SetDown;
    procedure Draw(Cnvs: TCanvas; UpDate: Boolean); override;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseEnter; override;
    procedure MouseLeave; override;
    function CanMorphing: Boolean; override;
  end;

  TbsSkinStdButtonObject = class(TbsSkinButtonObject)
  protected
    procedure DoMax;
    procedure DoMin;
    procedure DoClose;
    procedure DoRollUp;
    procedure DoCommand;
    procedure DoMinimizeToTray;
  public
    FSkinSupport: Boolean;
    Command: TbsStdCommand;
    RestoreRect, RestoreActiveRect, RestoreInActiveRect,
    RestoreDownRect: TRect;
    procedure DblClick; override;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); override;
    constructor Create(AParent: TbsBusinessSkinForm;
      AData: TbsDataSkinObject);
    procedure Draw(Cnvs: TCanvas; UpDate: Boolean); override;
    procedure DefaultDraw(Cnvs: TCanvas);
    function CanMorphing: Boolean; override;
  end;

  TbsSkinCaptionObject = class(TbsActiveSkinObject)
  public
    FontName: String;
    FontStyle: TFontStyles;
    FontHeight: Integer;
    FontColor: TColor;
    ActiveFontColor: TColor;
    ShadowColor: TColor;
    ActiveShadowColor: TColor;
    Shadow: Boolean;
    LightColor: TColor;
    ActiveLightColor: TColor;
    Light: Boolean;
    Alignment: TAlignment;
    TextRct: TRect;
    FrameRect, ActiveFrameRect: TRect;
    FrameLeftOffset, FrameRightOffset: Integer;
    FrameTextRect: TRect;
    StretchEffect: Boolean;
    FullFrame: Boolean;
    // animation
    FIncTime: Integer;
    //
    AnimateSkinRect: TRect;
    FrameCount: Integer;
    AnimateInterval: Integer;
    CurrentFrame: Integer;
    InActiveAnimation: Boolean;
    //
    constructor Create(AParent: TbsBusinessSkinForm;
      AData: TbsDataSkinObject);
    procedure MouseEnter; override;
    procedure MouseLeave; override;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); override;
    procedure Draw(Cnvs: TCanvas; UpDate: Boolean); override;
    function EnableAnimation: Boolean;
  end;

  TbsSkinMainMenu = class(TMainMenu)
  protected
    BSF: TbsBusinessSkinForm;
    FSD: TbsSkinData;
    procedure Notification(AComponent: TComponent;
      Operation: TOperation); override;
  public
    constructor Create(AOwner: TComponent); override;
  published
    property SkinData: TbsSkinData read FSD write FSD;
  end;

  // Menu Bar //
  TbsSkinMainMenuBar = class;

  TbsMenuBarObject = class(TObject)
  protected
    Parent: TbsSkinMainMenuBar;
    FMouseIn: Boolean;
    Picture: TBitMap;
    FDown: Boolean;
    FMorphKf: Double;
    procedure Redraw; virtual;
    procedure SetMorphKf(Value: Double);
  public
    IDName: String;
    SkinRect: TRect;
    ActiveSkinRect: TRect;
    DownRect: TRect;
    ObjectRect: TRect;
    Active: Boolean;
    Enabled: Boolean;
    Visible: Boolean;
    Morphing: Boolean;
    MorphKind: TbsMorphKind;
    constructor Create(AParent: TbsSkinMainMenuBar; AData: TbsDataSkinObject);
    function EnableMorphing: Boolean;
    procedure Draw(Cnvs: TCanvas); virtual;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); virtual;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); virtual;
    procedure DblClick; virtual; 
    procedure MouseEnter; virtual;
    procedure MouseLeave; virtual;
    function CanMorphing: Boolean; virtual;
    procedure DoMorphing;
    property MorphKf: Double read FMorphKf write SetMorphKf;
  end;

  TbsSkinMainMenuBarButton = class(TbsMenuBarObject)
  protected
    FSkinSupport: Boolean;
    procedure DoCommand;
  public
    Command: TbsStdCommand;
    constructor Create(AParent: TbsSkinMainMenuBar; AData: TbsDataSkinObject);
    procedure DefaultDraw(Cnvs: TCanvas);
    procedure Draw(Cnvs: TCanvas); override;
    procedure DblClick; override;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseUp(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseEnter; override;
    procedure MouseLeave; override;
  end;


  TbsSkinMainMenuBarItem = class(TbsMenuBarObject)
  protected
    FSkinSupport: Boolean;
    TempObjectRect: TRect;
    OldEnabled: Boolean;
    Visible: Boolean;

    function SearchDown: Boolean;
    procedure SearchActive;
    procedure SetDown(Value: Boolean);
    procedure TrackMenu;
    procedure Redraw; override;
  public
    MenuItem: TMenuItem;
    FontName: String;
    FontHeight: Integer;
    FontStyle: TFontStyles;
    UnEnabledFontColor, FontColor,
    ActiveFontColor, DownFontColor: TColor;
    TextRct: TRect;
    DownRect: TRect;
    LO, RO: Integer;
    StretchEffect: Boolean;
    AnimateSkinRect: TRect;
    FrameCount: Integer;
    AnimateInterval: Integer;
    CurrentFrame: Integer;
    InActiveAnimation: Boolean;
    function EnableAnimation: Boolean;
    constructor Create(AParent: TbsSkinMainMenuBar; AData: TbsDataSkinObject);
    procedure DefaultDraw(Cnvs: TCanvas);
    procedure Draw(Cnvs: TCanvas); override;
    procedure MouseEnter; override;
    procedure MouseDown(X, Y: Integer; Button: TMouseButton); override;
    procedure MouseLeave; override;
  end;

  TbsItemEnterEvent = procedure (MenuItem: TMenuItem) of object;
  TbsItemLeaveEvent = procedure (MenuItem: TMenuItem) of object;

  TbsSkinMainMenuBar = class(TbsSkinControl)
  protected
    FOnItemMouseEnter: TbsItemEnterEvent;
    FOnItemMouseLeave: TbsItemLeaveEvent;
    FScrollMenu: Boolean;
    FDefItemFont: TFont;
    FUseSkinFont: Boolean;
    FSkinSupport: Boolean;
    ButtonsCount: Integer;
    FMDIChildMax: Boolean;
    FPopupToUp: Boolean;
    MenuActive: Boolean;
    Scroll: Boolean;
    MarkerActive: Boolean;
    BSF: TbsBusinessSkinForm;
    FMainMenu: TMainMenu;
    MouseTimer: TTimer;
    MorphTimer: TTimer;
    AnimateTimer: TTimer;
    ActiveObject, OldActiveObject, MouseCaptureObject: Integer;
    FOnMouseEnter, FOnMouseLeave: TNotifyEvent;
    NewItemsRect: TRect;
    FDefaultWidth: Integer;
    FDefaultHeight: Integer;
    FMergeMenu: TMainMenu;
    procedure TestMorph(Sender: TObject);
    procedure TestAnimate(Sender: TObject);
    procedure SetDefaultWidth(Value: Integer);
    procedure SetDefaultHeight(Value: Integer);
    procedure SetDefItemFont(Value: TFont);
    procedure CloseSysMenu;
    procedure AddButtons;
    procedure DeleteButtons;
    procedure CheckButtons(BI: TbsBorderIcons);

    procedure TrackScrollMenu;
    procedure CalcRects;
    procedure SetMainMenu(Value: TMainMenu);
    procedure TestMouse(Sender: TObject);
      procedure PaintMenuBar(Cnvs: TCanvas);
    procedure WMEraseBkgnd(var Message: TWMEraseBkgnd); message WM_ERASEBKGND;
    procedure WMCloseSkinMenu(var Message: TMessage); message WM_CLOSESKINMENU; 
    procedure WMSize(var Message: TWMSIZE); message WM_SIZE;
    procedure WMMOVE(var Msg: TWMMOVE); message WM_MOVE;
    procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;
    procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
    procedure WMCHECKPARENTBG(var Msg: TWMEraseBkgnd); message WM_CHECKPARENTBG;
    procedure TestActive(X, Y: Integer);

    procedure Notification(AComponent: TComponent;
                           Operation: TOperation); override;

    procedure MouseDown(Button: TMouseButton; Shift: TShiftState;
      X, Y: Integer); override;
    procedure MouseUp(Button: TMouseButton; Shift: TShiftState;
      X, Y: Integer); override;
    procedure MouseMove(Shift: TShiftState; X, Y: Integer); override;
    procedure ClearObjects;
    procedure DrawSkinObject(AObject: TbsMenuBarObject);
    procedure MenuEnter;
    procedure MenuExit;
    procedure MenuClose;
    function CheckReturnKey: Boolean;
    procedure NextMainMenuItem;
    procedure PriorMainMenuItem;
    function FindHotKeyItem(CharCode: Integer): Boolean;
    function GetMarkerRect: TRect;
    procedure DrawMarker(Cnvs: TCanvas);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产午夜精品理论片a级大结局| 视频在线观看一区| 亚洲国产精品一区二区www| 日韩在线播放一区二区| 成人免费看片app下载| 欧美亚洲动漫精品| 久久久久久久久99精品| 石原莉奈一区二区三区在线观看| 日本道色综合久久| 91麻豆精品国产| 亚洲国产精品激情在线观看| 蜜臀va亚洲va欧美va天堂| 在线日韩av片| 中文字幕亚洲一区二区av在线| 青青草97国产精品免费观看无弹窗版| 91免费视频网| 国产精品美女久久久久aⅴ| 麻豆国产一区二区| 欧美日韩一区二区三区四区五区| 国产精品色婷婷久久58| 国产美女视频一区| 欧美zozozo| 麻豆精品在线播放| 欧美一区二区三区四区五区 | 99久久99久久综合| 久久亚洲综合色| 另类小说图片综合网| 884aa四虎影成人精品一区| 亚洲成人动漫av| 欧美三级电影精品| 亚洲一区二区三区四区五区黄| 99riav久久精品riav| 国产精品毛片无遮挡高清| 国产不卡高清在线观看视频| 国产日韩欧美a| 粗大黑人巨茎大战欧美成人| 国产网站一区二区| 国产综合成人久久大片91| 欧美变态口味重另类| 久久成人免费电影| 久久久久久免费网| 国产成人av一区二区| 国产欧美精品一区二区色综合 | 国产精品一区在线观看你懂的| 日韩一区二区三区观看| 麻豆精品国产传媒mv男同| 精品播放一区二区| 国产激情一区二区三区| 欧美国产欧美综合| 色老汉av一区二区三区| 一二三区精品福利视频| 7777精品伊人久久久大香线蕉超级流畅| 肉色丝袜一区二区| 精品裸体舞一区二区三区| 国产成人免费视频| 日韩理论在线观看| 欧美日韩一区 二区 三区 久久精品| 亚洲成av人影院| 久久这里只有精品视频网| 丁香亚洲综合激情啪啪综合| 国产精品成人免费精品自在线观看| av福利精品导航| 亚洲国产日韩综合久久精品| 日韩精品一区二区三区老鸭窝| 国产成人一级电影| 亚洲最快最全在线视频| 日韩亚洲欧美成人一区| 成人午夜av在线| 亚洲国产乱码最新视频| 欧美精品一区二区三区在线 | 日韩视频在线一区二区| 国产成人综合网| 亚洲综合久久久| 日韩欧美亚洲国产另类| av午夜一区麻豆| 久久狠狠亚洲综合| 亚洲免费三区一区二区| 精品日韩欧美一区二区| 色婷婷久久99综合精品jk白丝| 美女一区二区在线观看| 亚洲另类中文字| 久久色视频免费观看| 91美女片黄在线观看| 九色综合狠狠综合久久| 一区二区在线看| 亚洲国产精品成人综合| 欧美精三区欧美精三区| 不卡视频一二三四| 精品一区二区三区的国产在线播放| 中文字幕佐山爱一区二区免费| 精品欧美一区二区久久| 91激情五月电影| 99久久精品久久久久久清纯| 激情五月激情综合网| 视频一区欧美精品| 亚洲欧美国产77777| 国产日韩在线不卡| 精品国免费一区二区三区| 欧美日韩中文另类| 91香蕉国产在线观看软件| 国产精品一区二区视频| 久久精品国产精品亚洲综合| 香蕉av福利精品导航| 亚洲欧美偷拍另类a∨色屁股| 国产亚洲一二三区| 欧美成人在线直播| 在线播放欧美女士性生活| 一本色道亚洲精品aⅴ| 成+人+亚洲+综合天堂| 粉嫩久久99精品久久久久久夜| 久久精品国产一区二区三| 日韩国产精品久久久久久亚洲| 亚洲图片一区二区| 亚洲精品国产精品乱码不99| 亚洲欧美视频一区| 亚洲精品高清视频在线观看| 亚洲男人的天堂在线观看| 国产精品成人一区二区三区夜夜夜 | 欧美国产日韩精品免费观看| 国产欧美日韩在线| 亚洲国产高清不卡| 国产精品久久久久永久免费观看 | 亚洲精品一区二区三区香蕉| 精品女同一区二区| 日韩精品一区二区三区四区视频 | 欧美一区二区三区思思人| 欧美人成免费网站| 日韩欧美一二区| 久久久久国产精品人| 中文字幕亚洲电影| 亚洲免费三区一区二区| 午夜精品成人在线视频| 日韩精品视频网| 国产精品一级片在线观看| 国产盗摄女厕一区二区三区| 成人av在线资源网站| 91丨porny丨蝌蚪视频| 欧美亚洲日本国产| 日韩一区二区免费电影| 日本一区二区三级电影在线观看 | 樱花草国产18久久久久| 天堂蜜桃91精品| 韩国精品在线观看| 99精品桃花视频在线观看| 欧美日韩三级一区二区| 久久久亚洲午夜电影| 亚洲另类中文字| 看电视剧不卡顿的网站| www.日本不卡| 制服.丝袜.亚洲.另类.中文| 久久久久久久久久久黄色| 亚洲美女淫视频| 蜜桃免费网站一区二区三区| 99久久婷婷国产综合精品电影| 欧美日韩免费高清一区色橹橹| 精品国产百合女同互慰| 中文字幕字幕中文在线中不卡视频| 日本不卡视频一二三区| av电影一区二区| 欧美一区午夜精品| 中文字幕一区二区三区精华液| 日韩中文字幕不卡| 成人黄色软件下载| 91精品蜜臀在线一区尤物| 国产精品免费视频观看| 久久精品99久久久| 日本韩国视频一区二区| 精品剧情在线观看| 亚洲自拍偷拍麻豆| 国产91色综合久久免费分享| 欧美精品乱码久久久久久按摩| 日本一区二区三区久久久久久久久不| 婷婷成人激情在线网| av在线不卡网| 久久众筹精品私拍模特| 日本三级亚洲精品| 日本精品一区二区三区高清| 国产精品美女久久久久aⅴ国产馆| 麻豆视频观看网址久久| 欧美午夜片在线观看| 中文字幕精品三区| 国内精品久久久久影院色| 欧美精品亚洲二区| 亚洲精品成人天堂一二三| 丁香婷婷深情五月亚洲| 日韩欧美中文字幕一区| 亚洲bt欧美bt精品| 一本高清dvd不卡在线观看| 国产三级一区二区| 国产精品18久久久久久久网站| 7777精品伊人久久久大香线蕉完整版| 亚洲激情五月婷婷| 色综合色综合色综合| 国产精品人妖ts系列视频| 国产精品影视网| 国产午夜亚洲精品不卡| 国产精品资源网| 国产日产欧美一区| 国产91精品免费| 国产精品色哟哟网站|