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

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

?? tntcomctrls.pas

?? TNT Components Source
?? PAS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
    SendMessageW(Control.Handle, CCM_SETUNICODEFORMAT, Integer(True), 0);
end;

{ TTntListColumn }

procedure TTntListColumn.Assign(Source: TPersistent);
begin
  inherited;
  if Source is TTntListColumn then
    Caption := TTntListColumn(Source).Caption
  else if Source is TListColumn{TNT-ALLOW TListColumn} then
    FCaption := TListColumn{TNT-ALLOW TListColumn}(Source).Caption;
end;

procedure TTntListColumn.DefineProperties(Filer: TFiler);
begin
  inherited;
  TntPersistent_AfterInherited_DefineProperties(Filer, Self);
end;

procedure TTntListColumn.SetInheritedCaption(const Value: AnsiString);
begin
  inherited Caption := Value;
end;

function TTntListColumn.GetCaption: WideString;
begin
  Result := GetSyncedWideString(FCaption, inherited Caption);
end;

procedure TTntListColumn.SetCaption(const Value: WideString);
begin
  SetSyncedWideString(Value, FCaption, inherited Caption, SetInheritedCaption);
end;

{ TTntListColumns }

{$IFDEF COMPILER_6} // verified against VCL source in Delphi 6 and BCB 6
type
  THackCollection = class(TPersistent)
  protected
    FItemClass: TCollectionItemClass;
  end;
{$ENDIF}
{$IFDEF DELPHI_7} // verified against VCL source in Delphi 7
type
  THackCollection = class(TPersistent)
  protected
    FItemClass: TCollectionItemClass;
  end;
{$ENDIF}
{$IFDEF DELPHI_9} // verified against VCL source in Delphi 9
type
  THackCollection = class(TPersistent)
  protected
    FItemClass: TCollectionItemClass;
  end;
{$ENDIF}
{$IFDEF DELPHI_10} // verified against VCL source in Delphi 10
type
  THackCollection = class(TPersistent)
  protected
    FItemClass: TCollectionItemClass;
  end;
{$ENDIF}

constructor TTntListColumns.Create(AOwner: TTntCustomListView);
begin
  inherited Create(AOwner);
  Assert(THackCollection(Self).FItemClass = Self.ItemClass, 'Internal Error in TTntListColumns.Create().');
  THackCollection(Self).FItemClass := TTntListColumn
end;

function TTntListColumns.Owner: TTntCustomListView;
begin
  Result := inherited Owner as TTntCustomListView;
end;

function TTntListColumns.Add: TTntListColumn;
begin
  Result := (inherited Add) as TTntListColumn;
end;

function TTntListColumns.GetItem(Index: Integer): TTntListColumn;
begin
  Result := inherited Items[Index] as TTntListColumn;
end;

procedure TTntListColumns.SetItem(Index: Integer; Value: TTntListColumn);
begin
  inherited SetItem(Index, Value);
end;

{ TWideSubItems }
type
  TWideSubItems = class(TTntStringList)
  private
    FIgnoreInherited: Boolean;
    FInheritedOwner: TListItem{TNT-ALLOW TListItem};
    FOwner: TTntListItem;
  protected
    procedure Put(Index: Integer; const S: WideString); override;
    function GetObject(Index: Integer): TObject; override;
    procedure PutObject(Index: Integer; AObject: TObject); override;
    procedure SetUpdateState(Updating: Boolean); override;
  public
    procedure Insert(Index: Integer; const S: WideString); override;
    function AddObject(const S: WideString; AObject: TObject): Integer; override;
    procedure Clear; override;
    procedure Delete(Index: Integer); override;
  public
    constructor Create(AOwner: TTntListItem);
  end;

constructor TWideSubItems.Create(AOwner: TTntListItem);
begin
  inherited Create;
  FInheritedOwner := AOwner;
  FOwner := AOwner;
end;

function TWideSubItems.AddObject(const S: WideString; AObject: TObject): Integer;
begin
  FOwner.ListView.BeginChangingWideItem;
  try
    Result := inherited AddObject(S, AObject);
    if (not FIgnoreInherited) then
      FInheritedOwner.SubItems.AddObject(S, AObject);
  finally
    FOwner.ListView.EndChangingWideItem;
  end;
end;

procedure TWideSubItems.Clear;
begin
  FOwner.ListView.BeginChangingWideItem;
  try
    inherited;
    if (not FIgnoreInherited) then
      FInheritedOwner.SubItems.Clear;
  finally
    FOwner.ListView.EndChangingWideItem;
  end;
end;

procedure TWideSubItems.Delete(Index: Integer);
begin
  FOwner.ListView.BeginChangingWideItem;
  try
    inherited;
    if (not FIgnoreInherited) then
      FInheritedOwner.SubItems.Delete(Index);
  finally
    FOwner.ListView.EndChangingWideItem;
  end;
end;

procedure TWideSubItems.Insert(Index: Integer; const S: WideString);
begin
  FOwner.ListView.BeginChangingWideItem;
  try
    inherited;
    if (not FIgnoreInherited) then
      FInheritedOwner.SubItems.Insert(Index, S);
  finally
    FOwner.ListView.EndChangingWideItem;
  end;
end;

procedure TWideSubItems.Put(Index: Integer; const S: WideString);
begin
  FOwner.ListView.BeginChangingWideItem;
  try
    inherited;
    if (not FIgnoreInherited) then
      FInheritedOwner.SubItems[Index] := S;
  finally
    FOwner.ListView.EndChangingWideItem;
  end;
end;

function TWideSubItems.GetObject(Index: Integer): TObject;
begin
  Result := FInheritedOwner.SubItems.Objects[Index];
end;

procedure TWideSubItems.PutObject(Index: Integer; AObject: TObject);
begin
  FInheritedOwner.SubItems.Objects[Index] := AObject;
end;

type TAccessStrings = class(TStrings{TNT-ALLOW TStrings});

procedure TWideSubItems.SetUpdateState(Updating: Boolean);
begin
  inherited;
  TAccessStrings(FInheritedOwner.SubItems).SetUpdateState(Updating);
end;

{ TTntListItem }

constructor TTntListItem.Create(AOwner: TListItems{TNT-ALLOW TListItems});
begin
  inherited Create(AOwner);
  FSubItems := TWideSubItems.Create(Self);
end;

destructor TTntListItem.Destroy;
begin
  inherited;
  FreeAndNil(FSubItems);
end;

function TTntListItem.GetCaption: WideString;
begin
  Result := GetSyncedWideString(FCaption, inherited Caption);
end;

procedure TTntListItem.SetInheritedCaption(const Value: AnsiString);
begin
  inherited Caption := Value;
end;

procedure TTntListItem.SetCaption(const Value: WideString);
begin
  ListView.BeginChangingWideItem;
  try
    SetSyncedWideString(Value, FCaption, inherited Caption, SetInheritedCaption);
  finally
    ListView.EndChangingWideItem;
  end;
end;

procedure TTntListItem.Assign(Source: TPersistent);
begin
  if Source is TTntListItem then
    with Source as TTntListItem do
    begin
      Self.Caption := Caption;
      Self.Data := Data;
      Self.ImageIndex := ImageIndex;
      Self.Indent := Indent;
      Self.OverlayIndex := OverlayIndex;
      Self.StateIndex := StateIndex;
      Self.SubItems := SubItems;
      Self.Checked := Checked;
    end
  else inherited Assign(Source);
end;

procedure TTntListItem.SetSubItems(const Value: TTntStrings);
begin
  if Value <> nil then
    FSubItems.Assign(Value);
end;

function TTntListItem.GetTntOwner: TTntListItems;
begin
  Result := ListView.Items;
end;

function TTntListItem.GetListView: TTntCustomListView;
begin
  Result := ((inherited Owner).Owner as TTntCustomListView);
end;

{ TTntListItemsEnumerator }

constructor TTntListItemsEnumerator.Create(AListItems: TTntListItems);
begin
  inherited Create;
  FIndex := -1;
  FListItems := AListItems;
end;

function TTntListItemsEnumerator.GetCurrent: TTntListItem;
begin
  Result := FListItems[FIndex];
end;

function TTntListItemsEnumerator.MoveNext: Boolean;
begin
  Result := FIndex < FListItems.Count - 1;
  if Result then
    Inc(FIndex);
end;

{ TTntListItems }

function TTntListItems.Add: TTntListItem;
begin
  Result := (inherited Add) as TTntListItem;
end;

function TTntListItems.AddItem(Item: TTntListItem; Index: Integer): TTntListItem;
begin
  Result := (inherited AddItem(Item, Index)) as TTntListItem;
end;

function TTntListItems.Insert(Index: Integer): TTntListItem;
begin
  Result := (inherited Insert(Index)) as TTntListItem;
end;

function TTntListItems.GetItem(Index: Integer): TTntListItem;
begin
  Result := (inherited Item[Index]) as TTntListItem;
end;

function TTntListItems.Owner: TTntCustomListView;
begin
  Result := (inherited Owner) as TTntCustomListView;
end;

procedure TTntListItems.SetItem(Index: Integer; const Value: TTntListItem);
begin
  inherited Item[Index] := Value;
end;

function TTntListItems.GetEnumerator: TTntListItemsEnumerator;
begin
  Result := TTntListItemsEnumerator.Create(Self);
end;

{ TSavedListItem }
type
  TSavedListItem = class
    FCaption: WideString;
    FSubItems: TTntStrings;
    constructor Create;
    destructor Destroy; override;
  end;

constructor TSavedListItem.Create;
begin
  inherited;
  FSubItems := TTntStringList.Create;
end;

destructor TSavedListItem.Destroy;
begin
  FSubItems.Free;
  inherited;
end;

{ _TntInternalCustomListView }

function _TntInternalCustomListView.OwnerDataFind(Find: TItemFind;
  const FindString: AnsiString; const FindPosition: TPoint;
  FindData: Pointer; StartIndex: Integer; Direction: TSearchDirection;
  Wrap: Boolean): Integer;
var
  WideFindString: WideString;
begin
  if Assigned(PWideFindString) then
    WideFindString := PWideFindString
  else
    WideFindString := FindString;
  Result := OwnerDataFindW(Find, WideFindString, FindPosition, FindData, StartIndex, Direction, Wrap);
end;

function _TntInternalCustomListView.OwnerDataFetch(Item: TListItem{TNT-ALLOW TListItem};
  Request: TItemRequest): Boolean;
begin
  if  (CurrentDispInfo <> nil)
  and (OriginalDispInfoMask and LVIF_TEXT <> 0) then begin
    (Item as TTntListItem).FCaption := CurrentDispInfo.item.pszText
  end;
  (Item as TTntListItem).FSubItems.Clear;
  Result := OwnerDataFetchW(Item, Request);
end;

{ TTntCustomListView }

{$IFDEF COMPILER_6} // verified against VCL source in Delphi 6 and BCB 6
type
  THackCustomListView = class(TCustomMultiSelectListControl)
  protected
    FxxxCanvas: TCanvas;
    FxxxBorderStyle: TBorderStyle;
    FxxxViewStyle: TViewStyle;
    FxxxReadOnly: Boolean;
    FxxxLargeImages: TCustomImageList;
    FxxxSmallImages: TCustomImageList;
    FxxxStateImages: TCustomImageList;
    FxxxDragImage: TDragImageList;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧洲一区二区在线播放| 亚洲激情中文1区| 99re免费视频精品全部| 免费成人在线影院| 亚洲三级视频在线观看| 欧美成人免费网站| 欧美军同video69gay| 一本到不卡免费一区二区| 国产麻豆精品一区二区| 青娱乐精品在线视频| 亚洲精品国产精品乱码不99| 国产亚洲欧洲一区高清在线观看| 欧美日韩国产影片| 欧美伊人精品成人久久综合97 | 精品99999| 欧美三级视频在线播放| 99久久国产综合精品麻豆| 国产毛片精品一区| 久久成人综合网| 天天色天天操综合| 一区二区三区精密机械公司| 国产精品色一区二区三区| 26uuu国产日韩综合| 日韩午夜精品视频| 欧美美女激情18p| 欧美在线色视频| 色综合久久久久久久| 99在线精品观看| www.av精品| 成人精品gif动图一区| 国产精品456| 国产美女在线精品| 国内成人免费视频| 国产一区二区三区免费| 精品一区二区三区免费播放| 男人的天堂亚洲一区| 三级精品在线观看| 蜜桃av一区二区三区电影| 青青草精品视频| 麻豆一区二区三| 老司机一区二区| 免费成人av资源网| 精品在线播放免费| 国产福利91精品| 成人丝袜18视频在线观看| www.亚洲色图| 99re热视频精品| 91久久精品网| 欧美女孩性生活视频| 欧美精品视频www在线观看| 制服丝袜日韩国产| 精品蜜桃在线看| 中文字幕精品在线不卡| 成人欧美一区二区三区小说 | 欧美成人激情免费网| 精品国一区二区三区| 国产日韩欧美不卡在线| 国产精品久久久久aaaa| 亚洲精品水蜜桃| 国产剧情一区二区三区| 国产成人精品免费在线| 99国产精品久| 5566中文字幕一区二区电影| 精品国产电影一区二区| 欧美激情在线一区二区三区| 亚洲视频在线观看一区| 亚洲曰韩产成在线| 美女视频网站黄色亚洲| 激情偷乱视频一区二区三区| 成人午夜看片网址| 91美女片黄在线| 538在线一区二区精品国产| 精品国产乱码久久久久久浪潮| 久久精品夜夜夜夜久久| 亚洲精品高清在线| 免费成人在线视频观看| 99天天综合性| 欧美一区二区三区影视| 国产三级久久久| 亚洲愉拍自拍另类高清精品| 九九视频精品免费| 91一区二区三区在线观看| 777色狠狠一区二区三区| 亚洲国产精品黑人久久久| 亚洲综合一区二区精品导航| 91麻豆精品在线观看| 国产精品不卡在线观看| 亚洲午夜成aⅴ人片| 国模无码大尺度一区二区三区| 激情久久五月天| 国产精品一区三区| 91麻豆免费视频| 精品国产电影一区二区| 亚洲精品国产一区二区精华液| 狠狠色综合日日| 欧美在线色视频| 国产精品情趣视频| 捆绑调教一区二区三区| 91久久国产最好的精华液| 久久精品视频在线看| 午夜精品一区二区三区三上悠亚| 国产精品自拍av| 7777精品伊人久久久大香线蕉 | 九色|91porny| 欧美三级欧美一级| 亚洲女厕所小便bbb| 国产高清无密码一区二区三区| 欧美日韩在线综合| 亚洲欧洲色图综合| 国产一区二区中文字幕| 欧美一区二区私人影院日本| 亚洲女与黑人做爰| 成人免费的视频| 久久久午夜精品| 男女男精品视频| 欧美日韩三级一区二区| 自拍偷拍亚洲欧美日韩| 国产成人精品免费看| 精品成人在线观看| 日本不卡视频在线| 宅男噜噜噜66一区二区66| 亚洲国产aⅴ天堂久久| 色综合久久久久久久久久久| 国产精品久久久久四虎| 高清在线不卡av| 久久欧美中文字幕| 国内成人免费视频| 久久综合999| 国产一区亚洲一区| xf在线a精品一区二区视频网站| 日韩精品一级中文字幕精品视频免费观看| 色狠狠综合天天综合综合| 亚洲欧美日韩国产中文在线| 99视频精品在线| 亚洲视频每日更新| 91美女片黄在线观看91美女| 亚洲色欲色欲www在线观看| 成人黄色777网| 亚洲免费观看视频| 欧洲av在线精品| 一区二区三区在线不卡| 在线这里只有精品| 亚洲成av人片在线| 欧美一区二区视频网站| 日本伊人色综合网| 日韩欧美亚洲国产精品字幕久久久| 日韩黄色免费网站| 久久久亚洲午夜电影| 成人网在线免费视频| 亚洲人成亚洲人成在线观看图片 | 国产精品美女www爽爽爽| 91啪在线观看| 亚洲图片一区二区| 欧美一级日韩不卡播放免费| 久久国产尿小便嘘嘘尿| 久久久美女毛片| 成人av电影在线| 亚洲午夜精品一区二区三区他趣| 欧美日韩高清在线| 极品少妇一区二区| 久久九九全国免费| 在线视频欧美精品| 全部av―极品视觉盛宴亚洲| 久久久精品免费观看| 99国产欧美久久久精品| 午夜激情综合网| 久久久蜜桃精品| 色婷婷国产精品| 九九国产精品视频| 《视频一区视频二区| 欧美精品一卡两卡| 国产99久久久精品| 一区二区三区免费在线观看| 日韩一区二区三区av| 成人丝袜18视频在线观看| 午夜精品成人在线| 中文字幕第一区综合| 欧美乱妇20p| 国产成人h网站| 日韩电影在线免费| 国产精品视频一区二区三区不卡| 欧美色精品天天在线观看视频| 国产在线精品国自产拍免费| 伊人性伊人情综合网| 久久综合久久综合久久综合| 色先锋资源久久综合| 国产一区二区在线视频| 午夜精品一区二区三区三上悠亚| 久久久久久久久久久久久女国产乱| 色一情一乱一乱一91av| 国产精品亚洲专一区二区三区| 亚洲一区二区三区中文字幕 | 欧美激情一区二区三区全黄| 91精品国产综合久久精品性色| 成人网页在线观看| 狠狠色丁香婷婷综合| 亚洲国产中文字幕| 国产精品夫妻自拍| 国产麻豆视频精品| 日本欧美久久久久免费播放网|