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

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

?? tntcomctrls.pas

?? TNT Components Source
?? PAS
?? 第 1 頁 / 共 5 頁
字號:

{*****************************************************************************}
{                                                                             }
{    Tnt Delphi Unicode Controls                                              }
{      http://www.tntware.com/delphicontrols/unicode/                         }
{        Version: 2.3.0                                                       }
{                                                                             }
{    Copyright (c) 2002-2007, Troy Wolbrink (troy.wolbrink@tntware.com)       }
{                                                                             }
{*****************************************************************************}

unit TntComCtrls;

{$INCLUDE TntCompilers.inc}

interface

{ TODO: TTntCustomListView events - reintroduce ones that refer to ansi classes (ie. TListItem) }
{ TODO: Handle RichEdit CRLF emulation at the WndProc level. }
{ TODO: TTntCustomTreeView events - reintroduce ones that refer to ansi classes (ie. TTreeNode) }
{ TODO: THotKey, Tanimate, TCoolBar (TCoolBand) }
{ TODO: TToolBar: Unicode-enable TBN_GETBUTTONINFO/DoGetButton }
{ TODO: TToolBar: Unicode-enable handling of CN_DIALOGCHAR, WM_SYSCOMMAND, FindButtonFromAccel }

uses
  Classes, Controls, ListActns, Menus, ComCtrls, Messages,
  Windows, CommCtrl, Contnrs, TntControls, TntClasses, Graphics, TntSysUtils;

type
  TTntCustomListView = class;
  TTntListItems = class;

{TNT-WARN TListColumn}
  TTntListColumn = class(TListColumn{TNT-ALLOW TListColumn})
  private
    FCaption: WideString;
    procedure SetInheritedCaption(const Value: AnsiString);
    function GetCaption: WideString;
    procedure SetCaption(const Value: WideString);
  protected
    procedure DefineProperties(Filer: TFiler); override;
  public
    procedure Assign(Source: TPersistent); override;
  published
    property Caption: WideString read GetCaption write SetCaption;
  end;

{TNT-WARN TListColumns}
  TTntListColumns = class(TListColumns{TNT-ALLOW TListColumns})
  private
    function GetItem(Index: Integer): TTntListColumn;
    procedure SetItem(Index: Integer; Value: TTntListColumn);
  public
    constructor Create(AOwner: TTntCustomListView);
    function Add: TTntListColumn;
    function Owner: TTntCustomListView;
    property Items[Index: Integer]: TTntListColumn read GetItem write SetItem; default;
  end;

{TNT-WARN TListItem}
  TTntListItem = class(TListItem{TNT-ALLOW TListItem})
  private
    FCaption: WideString;
    FSubItems: TTntStrings;
    procedure SetInheritedCaption(const Value: AnsiString);
    function GetCaption: WideString;
    procedure SetCaption(const Value: WideString);
    procedure SetSubItems(const Value: TTntStrings);
    function GetListView: TTntCustomListView;
    function GetTntOwner: TTntListItems;
  public
    constructor Create(AOwner: TListItems{TNT-ALLOW TListItems}); virtual;
    destructor Destroy; override;
    property Owner: TTntListItems read GetTntOwner;
    property ListView: TTntCustomListView read GetListView;
    procedure Assign(Source: TPersistent); override;
    property Caption: WideString read GetCaption write SetCaption;
    property SubItems: TTntStrings read FSubItems write SetSubItems;
  end;

  TTntListItemsEnumerator = class
  private
    FIndex: Integer;
    FListItems: TTntListItems;
  public
    constructor Create(AListItems: TTntListItems);
    function GetCurrent: TTntListItem;
    function MoveNext: Boolean;
    property Current: TTntListItem read GetCurrent;
  end;

{TNT-WARN TListItems}
  TTntListItems = class(TListItems{TNT-ALLOW TListItems})
  private
    function GetItem(Index: Integer): TTntListItem;
    procedure SetItem(Index: Integer; const Value: TTntListItem);
  public
    function Owner: TTntCustomListView;
    property Item[Index: Integer]: TTntListItem read GetItem write SetItem; default;
    function Add: TTntListItem;
    function AddItem(Item: TTntListItem; Index: Integer = -1): TTntListItem;
    function GetEnumerator: TTntListItemsEnumerator;
    function Insert(Index: Integer): TTntListItem;
  end;

  TTntLVEditedEvent = procedure(Sender: TObject; Item: TTntListItem; var S: WideString) of object;
  TTntLVOwnerDataFindEvent = procedure(Sender: TObject; Find: TItemFind;
    const FindString: WideString; const FindPosition: TPoint; FindData: Pointer;
    StartIndex: Integer; Direction: TSearchDirection; Wrap: Boolean;
    var Index: Integer) of object;

{TNT-WARN TCustomListView}
  _TntInternalCustomListView = class(TCustomListView{TNT-ALLOW TCustomListView})
  private
    PWideFindString: PWideChar;
    CurrentDispInfo: PLVDispInfoW;
    OriginalDispInfoMask: Cardinal;
    function OwnerDataFindW(Find: TItemFind; const FindString: WideString;
      const FindPosition: TPoint; FindData: Pointer; StartIndex: Integer;
        Direction: TSearchDirection; Wrap: Boolean): Integer; virtual; abstract;
    function OwnerDataFetchW(Item: TListItem{TNT-ALLOW TListItem}; Request: TItemRequest): Boolean; virtual; abstract;
  protected
    function OwnerDataFind(Find: TItemFind; const FindString: AnsiString;
      const FindPosition: TPoint; FindData: Pointer; StartIndex: Integer;
        Direction: TSearchDirection; Wrap: Boolean): Integer; override;
    function OwnerDataFetch(Item: TListItem{TNT-ALLOW TListItem}; Request: TItemRequest): Boolean; override;
  end;

  TTntCustomListView = class(_TntInternalCustomListView, IWideCustomListControl)
  private
    FEditHandle: THandle;
    FEditInstance: Pointer;
    FDefEditProc: Pointer;
    FOnEdited: TTntLVEditedEvent;
    FOnDataFind: TTntLVOwnerDataFindEvent;
    procedure EditWndProcW(var Message: TMessage);
    procedure BeginChangingWideItem;
    procedure EndChangingWideItem;
    function GetHint: WideString;
    procedure SetHint(const Value: WideString);
    function IsHintStored: Boolean;
    function GetListColumns: TTntListColumns;
    procedure SetListColumns(const Value: TTntListColumns);
    function ColumnFromIndex(Index: Integer): TTntListColumn;
    function GetColumnFromTag(Tag: Integer): TTntListColumn;
    function OwnerDataFindW(Find: TItemFind; const FindString: WideString;
      const FindPosition: TPoint; FindData: Pointer; StartIndex: Integer;
        Direction: TSearchDirection; Wrap: Boolean): Integer; override;
    function OwnerDataFetchW(Item: TListItem{TNT-ALLOW TListItem}; Request: TItemRequest): Boolean; override;
    function GetDropTarget: TTntListItem;
    procedure SetDropTarget(const Value: TTntListItem);
    function GetItemFocused: TTntListItem;
    procedure SetItemFocused(const Value: TTntListItem);
    function GetSelected: TTntListItem;
    procedure SetSelected(const Value: TTntListItem);
    function GetTopItem: TTntListItem;
  private
    FSavedItems: TObjectList;
    FTestingForSortProc: Boolean;
    FChangingWideItemCount: Integer;
    FTempItem: TTntListItem;
    function AreItemsStored: Boolean;
    function GetItems: TTntListItems;
    procedure SetItems(Value: TTntListItems);
    procedure CNNotify(var Message: TWMNotify); message CN_NOTIFY;
    function GetItemW(Value: TLVItemW): TTntListItem;
    procedure WMNotify(var Message: TWMNotify); message WM_NOTIFY;
  protected
    procedure CreateWindowHandle(const Params: TCreateParams); override;
    procedure DefineProperties(Filer: TFiler); override;
    function GetActionLinkClass: TControlActionLinkClass; override;
    procedure ActionChange(Sender: TObject; CheckDefaults: Boolean); override;
    procedure CreateWnd; override;
    procedure DestroyWnd; override;
    procedure WndProc(var Message: TMessage); override;
    function OwnerDataFetch(Item: TListItem{TNT-ALLOW TListItem}; Request: TItemRequest): Boolean; reintroduce; virtual;
    function CreateListItem: TListItem{TNT-ALLOW TListItem}; override;
    function CreateListItems: TListItems{TNT-ALLOW TListItems}; override;
    property Items: TTntListItems read GetItems write SetItems stored AreItemsStored;
    procedure Edit(const Item: TLVItem); override;
    function OwnerDataFind(Find: TItemFind; const FindString: WideString;
      const FindPosition: TPoint; FindData: Pointer; StartIndex: Integer;
      Direction: TSearchDirection; Wrap: Boolean): Integer; reintroduce; virtual;
    property Columns: TTntListColumns read GetListColumns write SetListColumns;
    procedure DrawItem(Item: TListItem{TNT-ALLOW TListItem}; Rect: TRect; State: TOwnerDrawState); override;
    property OnEdited: TTntLVEditedEvent read FOnEdited write FOnEdited;
    property OnDataFind: TTntLVOwnerDataFindEvent read FOnDataFind write FOnDataFind;
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    property Column[Index: Integer]: TTntListColumn read ColumnFromIndex;
    procedure CopySelection(Destination: TCustomListControl); override;
    procedure AddItem(const Item: WideString; AObject: TObject); reintroduce; virtual;
    function FindCaption(StartIndex: Integer; Value: WideString; Partial,
      Inclusive, Wrap: Boolean): TTntListItem;
    function GetSearchString: WideString;
    function StringWidth(S: WideString): Integer;
  public
    property DropTarget: TTntListItem read GetDropTarget write SetDropTarget;
    property ItemFocused: TTntListItem read GetItemFocused write SetItemFocused;
    property Selected: TTntListItem read GetSelected write SetSelected;
    property TopItem: TTntListItem read GetTopItem;
  published
    property Hint: WideString read GetHint write SetHint stored IsHintStored;
  end;

{TNT-WARN TListView}
  TTntListView = class(TTntCustomListView)
  published
    property Action;
    property Align;
    property AllocBy;
    property Anchors;
    property BevelEdges;
    property BevelInner;
    property BevelOuter;
    property BevelKind default bkNone;
    property BevelWidth;
    property BiDiMode;
    property BorderStyle;
    property BorderWidth;
    property Checkboxes;
    property Color;
    property Columns;
    property ColumnClick;
    property Constraints;
    property Ctl3D;
    property DragCursor;
    property DragKind;
    property DragMode;
    property Enabled;
    property Font;
    property FlatScrollBars;
    property FullDrag;
    property GridLines;
    property HideSelection;
    property HotTrack;
    property HotTrackStyles;
    property HoverTime;
    property IconOptions;
    property Items;
    property LargeImages;
    property MultiSelect;
    property OwnerData;
    property OwnerDraw;
    property ReadOnly default False;
    property RowSelect;
    property ParentBiDiMode;
    property ParentColor default False;
    property ParentFont;
    property ParentShowHint;
    property PopupMenu;
    property ShowColumnHeaders;
    property ShowWorkAreas;
    property ShowHint;
    property SmallImages;
    property SortType;
    property StateImages;
    property TabOrder;
    property TabStop default True;
    property ViewStyle;
    property Visible;
    property OnAdvancedCustomDraw;
    property OnAdvancedCustomDrawItem;
    property OnAdvancedCustomDrawSubItem;
    property OnChange;
    property OnChanging;
    property OnClick;
    property OnColumnClick;
    property OnColumnDragged;
    property OnColumnRightClick;
    property OnCompare;
    property OnContextPopup;
    property OnCustomDraw;
    property OnCustomDrawItem;
    property OnCustomDrawSubItem;
    property OnData;
    property OnDataFind;
    property OnDataHint;
    property OnDataStateChange;
    property OnDblClick;
    property OnDeletion;
    property OnDrawItem;
    property OnEdited;
    property OnEditing;
    property OnEndDock;
    property OnEndDrag;
    property OnEnter;
    property OnExit;
    property OnGetImageIndex;
    property OnGetSubItemImage;
    property OnDragDrop;
    property OnDragOver;
    property OnInfoTip;
    property OnInsert;
    property OnKeyDown;
    property OnKeyPress;
    property OnKeyUp;
    {$IFDEF COMPILER_9_UP}
    property OnMouseActivate;
    {$ENDIF}
    property OnMouseDown;
    {$IFDEF COMPILER_10_UP}
    property OnMouseEnter;
    property OnMouseLeave;
    {$ENDIF}
    property OnMouseMove;
    property OnMouseUp;
    property OnResize;
    property OnSelectItem;
    property OnStartDock;
    property OnStartDrag;
  end;

type
{TNT-WARN TToolButton}
  TTntToolButton = class(TToolButton{TNT-ALLOW TToolButton})
  private
    procedure CMVisibleChanged(var Message: TMessage); message CM_VISIBLECHANGED;
    function GetCaption: TWideCaption;
    procedure SetCaption(const Value: TWideCaption);
    function IsCaptionStored: Boolean;
    function GetHint: WideString;
    procedure SetHint(const Value: WideString);
    function IsHintStored: Boolean;
    procedure CMHintShow(var Message: TMessage); message CM_HINTSHOW;
    function GetMenuItem: TMenuItem{TNT-ALLOW TMenuItem};
    procedure SetMenuItem(const Value: TMenuItem{TNT-ALLOW TMenuItem});
  protected
    procedure DefineProperties(Filer: TFiler); override;
    procedure ActionChange(Sender: TObject; CheckDefaults: Boolean); override;
    function GetActionLinkClass: TControlActionLinkClass; override;
  published
    property Caption: TWideCaption read GetCaption write SetCaption stored IsCaptionStored;
    property Hint: WideString read GetHint write SetHint stored IsHintStored;
    property MenuItem: TMenuItem{TNT-ALLOW TMenuItem} read GetMenuItem write SetMenuItem;
  end;

type
{TNT-WARN TToolBar}
  TTntToolBar = class(TToolBar{TNT-ALLOW TToolBar})
  private
    FCaption: WideString;
    procedure TBInsertButtonA(var Message: TMessage); message TB_INSERTBUTTONA;
    procedure WMGetText(var Message: TWMGetText); message WM_GETTEXT;
    procedure WMGetTextLength(var Message: TWMGetTextLength); message WM_GETTEXTLENGTH;
    procedure WMSetText(var Message: TWMSetText); message WM_SETTEXT;
    function GetMenu: TMainMenu{TNT-ALLOW TMainMenu};
    procedure SetMenu(const Value: TMainMenu{TNT-ALLOW TMainMenu});
  private
    function GetCaption: WideString;
    function GetHint: WideString;
    function IsCaptionStored: Boolean;
    function IsHintStored: Boolean;
    procedure SetCaption(const Value: WideString);
    procedure SetHint(const Value: WideString);
  protected
    procedure CreateWindowHandle(const Params: TCreateParams); override;
    procedure DefineProperties(Filer: TFiler); override;
    procedure ActionChange(Sender: TObject; CheckDefaults: Boolean); override;
    function GetActionLinkClass: TControlActionLinkClass; override;
  published
    property Caption: WideString read GetCaption write SetCaption stored IsCaptionStored;
    property Hint: WideString read GetHint write SetHint stored IsHintStored;
    property Menu: TMainMenu{TNT-ALLOW TMainMenu} read GetMenu write SetMenu;
  end;

type
{TNT-WARN TCustomRichEdit}
  TTntCustomRichEdit = class(TCustomRichEdit{TNT-ALLOW TCustomRichEdit})
  private
    FRichEditStrings: TTntStrings;
    FPrintingTextLength: Integer;
    procedure WMGetTextLength(var Message: TWMGetTextLength); message WM_GETTEXTLENGTH;
    procedure SetRichEditStrings(const Value: TTntStrings);
    function GetWideSelText: WideString;
    function GetText: WideString;
    procedure SetWideSelText(const Value: WideString);
    procedure SetText(const Value: WideString);
    function GetHint: WideString;
    function IsHintStored: Boolean;
    procedure SetHint(const Value: WideString);
    procedure SetRTFText(Flags: DWORD; const Value: AnsiString);
  protected
    procedure CreateParams(var Params: TCreateParams); override;
    procedure CreateWindowHandle(const Params: TCreateParams); override;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲黄色性网站| 日韩免费高清视频| 久久麻豆一区二区| 亚洲美女在线国产| 国产一区视频网站| 欧美日韩一区二区三区不卡 | 精品国内二区三区| 中文字幕一区二区不卡| 精品一区免费av| 欧美日韩亚洲综合一区二区三区| 欧美国产成人在线| 麻豆精品在线播放| 欧美丝袜丝交足nylons图片| 中文在线资源观看网站视频免费不卡| 奇米色一区二区| 欧美伊人久久大香线蕉综合69| 国产免费成人在线视频| 美女视频免费一区| 欧美日韩二区三区| 悠悠色在线精品| 99麻豆久久久国产精品免费| 国产精品另类一区| 美洲天堂一区二卡三卡四卡视频| 欧美中文字幕一区二区三区亚洲| 中文字幕巨乱亚洲| 国产成人免费视频网站高清观看视频 | 又紧又大又爽精品一区二区| 国产成人在线影院| 亚洲精品一区二区三区蜜桃下载| 秋霞电影一区二区| 欧美福利一区二区| 午夜不卡在线视频| 91久久精品午夜一区二区| 国产精品久久久久婷婷二区次| 国产福利电影一区二区三区| 精品日韩一区二区三区免费视频| 日韩成人av影视| 欧美老人xxxx18| 亚洲1区2区3区视频| 欧美伊人久久大香线蕉综合69| 一区二区三区在线免费观看| 色菇凉天天综合网| 亚洲黄色在线视频| 欧美美女网站色| 午夜精品久久久| 69精品人人人人| 天堂久久一区二区三区| 宅男噜噜噜66一区二区66| 亚洲18女电影在线观看| 欧美日韩国产精品自在自线| 天使萌一区二区三区免费观看| 在线电影院国产精品| 蜜臀av性久久久久蜜臀av麻豆| 欧美一区二区三区小说| 狂野欧美性猛交blacked| 欧美一区二区三区免费视频| 蜜臀va亚洲va欧美va天堂| 日韩午夜在线观看| 国产一区二区三区在线观看免费| 亚洲精品一区二区三区四区高清 | 国产成人8x视频一区二区 | 亚洲一区二区三区四区五区中文 | 亚洲欧美另类图片小说| 欧美日韩精品一区二区| 国产高清久久久久| 亚洲福利一二三区| 日本一区二区三区dvd视频在线 | 91丨九色丨尤物| 日韩av电影一区| 精品日韩在线观看| 粉嫩在线一区二区三区视频| 国产精品美女久久久久aⅴ| 9i在线看片成人免费| 一区二区三区精品久久久| 欧美日韩电影一区| 国产一区在线观看视频| 中文字幕亚洲精品在线观看| 91传媒视频在线播放| 三级影片在线观看欧美日韩一区二区 | 亚洲黄色av一区| 欧美精品99久久久**| 国内精品视频666| 中文字幕欧美一| 欧美日韩国产电影| 精品无人区卡一卡二卡三乱码免费卡| 亚洲国产精品成人久久综合一区| 色妹子一区二区| 麻豆一区二区三区| 国产精品动漫网站| 3atv在线一区二区三区| 国产成人啪免费观看软件| 夜色激情一区二区| 久久综合久久鬼色| 91久久免费观看| 国精产品一区一区三区mba视频 | 国产亚洲美州欧州综合国| 色综合久久久久| 久久精品国产在热久久| 国产精品毛片a∨一区二区三区| 欧美日韩国产高清一区二区三区 | 国产999精品久久| 亚洲成av人片一区二区| 久久久久国产免费免费| 欧美午夜在线观看| 国产成人av电影| 免费美女久久99| 亚洲人成亚洲人成在线观看图片| 日韩欧美在线不卡| 日本精品一区二区三区高清 | 久久国产精品72免费观看| 亚洲人成在线播放网站岛国| 欧美va亚洲va| 91玉足脚交白嫩脚丫在线播放| 六月丁香婷婷久久| 亚洲曰韩产成在线| 中文乱码免费一区二区| 7777精品久久久大香线蕉| eeuss影院一区二区三区| 久久电影网站中文字幕| 亚洲国产婷婷综合在线精品| 国产精品久久久久久亚洲伦| 日韩欧美视频在线| 欧美日韩精品欧美日韩精品一综合| 国产成人免费视频网站| 麻豆成人在线观看| 亚洲va韩国va欧美va| 中文欧美字幕免费| 日本黄色一区二区| 精品久久久久一区二区国产| a在线欧美一区| 一区二区三区免费看视频| 欧美日韩成人综合天天影院 | 色又黄又爽网站www久久| 欧美日精品一区视频| 91九色最新地址| 国产经典欧美精品| 日韩黄色一级片| 伊人色综合久久天天| 欧美激情一区在线| 精品粉嫩aⅴ一区二区三区四区| 欧美日韩美女一区二区| 色婷婷精品大视频在线蜜桃视频| 成人小视频免费观看| 国产乱人伦偷精品视频免下载 | 国产欧美一区二区精品性色超碰| 91精品综合久久久久久| 欧美视频中文字幕| 国产一区二区三区日韩| 欧美三级乱人伦电影| 国产一区欧美日韩| 国产精品福利一区二区三区| 成人综合婷婷国产精品久久蜜臀| 精品免费国产二区三区| 日韩高清中文字幕一区| 欧美日韩国产电影| 日韩电影免费一区| 日韩欧美三级在线| 精品一区二区三区免费观看| 亚洲精品一区二区三区在线观看| 成人av先锋影音| 久久久久青草大香线综合精品| 欧美三级日本三级少妇99| 欧美午夜精品理论片a级按摩| 在线视频你懂得一区二区三区| 91麻豆精品视频| 色婷婷久久久亚洲一区二区三区| 91老司机福利 在线| 色婷婷亚洲精品| 欧美性xxxxx极品少妇| 欧美久久久久久蜜桃| 3d成人动漫网站| 精品处破学生在线二十三| 久久影院电视剧免费观看| 国产欧美一区二区精品性色超碰 | 777亚洲妇女| 日韩欧美综合一区| 26uuu成人网一区二区三区| 国产日韩欧美制服另类| 欧美国产精品劲爆| 亚洲免费大片在线观看| 亚洲一区二区三区激情| 亚洲一区二区av电影| 日韩国产欧美在线观看| 久久精品二区亚洲w码| 粉嫩av一区二区三区| 99久久久久久| 欧美日韩一区三区四区| 日韩精品一区二区三区中文不卡| 久久日韩精品一区二区五区| 日本一区二区免费在线观看视频| 自拍偷拍亚洲欧美日韩| 亚洲aⅴ怡春院| 激情久久五月天| jiyouzz国产精品久久| 欧美日韩一区二区三区高清 | 在线一区二区视频| 91精品国产综合久久久久久久久久 | 91成人网在线| 精品蜜桃在线看| 老司机午夜精品|