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

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

?? tntcomctrls.pas

?? TNT Components Source
?? PAS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
    FxxxMultiSelect: Boolean;
    FxxxSortType: TSortType;
    FxxxColumnClick: Boolean;
    FxxxShowColumnHeaders: Boolean;
    FxxxListItems: TListItems{TNT-ALLOW TListItems};
    FxxxClicked: Boolean;
    FxxxRClicked: Boolean;
    FxxxIconOptions: TIconOptions;
    FxxxHideSelection: Boolean;
    FListColumns: TListColumns{TNT-ALLOW TListColumns};
  end;
{$ENDIF}
{$IFDEF DELPHI_7} // verified against VCL source in Delphi 7
type
  THackCustomListView = class(TCustomMultiSelectListControl)
  protected
    FxxxCanvas: TCanvas;
    FxxxBorderStyle: TBorderStyle;
    FxxxViewStyle: TViewStyle;
    FxxxReadOnly: Boolean;
    FxxxLargeImages: TCustomImageList;
    FxxxSmallImages: TCustomImageList;
    FxxxStateImages: TCustomImageList;
    FxxxDragImage: TDragImageList;
    FxxxMultiSelect: Boolean;
    FxxxSortType: TSortType;
    FxxxColumnClick: Boolean;
    FxxxShowColumnHeaders: Boolean;
    FxxxListItems: TListItems{TNT-ALLOW TListItems};
    FxxxClicked: Boolean;
    FxxxRClicked: Boolean;
    FxxxIconOptions: TIconOptions;
    FxxxHideSelection: Boolean;
    FListColumns: TListColumns{TNT-ALLOW TListColumns};
  end;
{$ENDIF}
{$IFDEF DELPHI_9} // verified against VCL source in Delphi 9
type
  THackCustomListView = class(TCustomMultiSelectListControl)
  protected
    FxxxCanvas: TCanvas;
    FxxxBorderStyle: TBorderStyle;
    FxxxViewStyle: TViewStyle;
    FxxxReadOnly: Boolean;
    FxxxLargeImages: TCustomImageList;
    FxxxSmallImages: TCustomImageList;
    FxxxStateImages: TCustomImageList;
    FxxxDragImage: TDragImageList;
    FxxxMultiSelect: Boolean;
    FxxxSortType: TSortType;
    FxxxColumnClick: Boolean;
    FxxxShowColumnHeaders: Boolean;
    FxxxListItems: TListItems{TNT-ALLOW TListItems};
    FxxxClicked: Boolean;
    FxxxRClicked: Boolean;
    FxxxIconOptions: TIconOptions;
    FxxxHideSelection: Boolean;
    FListColumns: TListColumns{TNT-ALLOW TListColumns};
  end;
{$ENDIF}
{$IFDEF DELPHI_10} // verified against VCL source in Delphi 10
type
  THackCustomListView = class(TCustomMultiSelectListControl)
  protected
    FxxxCanvas: TCanvas;
    FxxxBorderStyle: TBorderStyle;
    FxxxViewStyle: TViewStyle;
    FxxxReadOnly: Boolean;
    FxxxLargeImages: TCustomImageList;
    FxxxSaveSelectedIndex: Integer;
    FxxxSmallImages: TCustomImageList;
    FxxxStateImages: TCustomImageList;
    FxxxDragImage: TDragImageList;
    FxxxMultiSelect: Boolean;
    FxxxSortType: TSortType;
    FxxxColumnClick: Boolean;
    FxxxShowColumnHeaders: Boolean;
    FxxxListItems: TListItems{TNT-ALLOW TListItems};
    FxxxClicked: Boolean;
    FxxxRClicked: Boolean;
    FxxxIconOptions: TIconOptions;
    FxxxHideSelection: Boolean;
    FListColumns: TListColumns{TNT-ALLOW TListColumns};
  end;
{$ENDIF}

var
  ComCtrls_DefaultListViewSort: TLVCompare = nil;

constructor TTntCustomListView.Create(AOwner: TComponent);
begin
  inherited;
  FEditInstance := Classes.MakeObjectInstance(EditWndProcW);
  // create list columns
  Assert(THackCustomListView(Self).FListColumns = inherited Columns, 'Internal Error in TTntCustomListView.Create().');
  FreeAndNil(THackCustomListView(Self).FListColumns);
  THackCustomListView(Self).FListColumns := TTntListColumns.Create(Self);
end;

destructor TTntCustomListView.Destroy;
begin
  inherited;
  Classes.FreeObjectInstance(FEditInstance);
  FreeAndNil(FSavedItems);
end;

procedure TTntCustomListView.CreateWindowHandle(const Params: TCreateParams);

  procedure Capture_ComCtrls_DefaultListViewSort;
  begin
    FTestingForSortProc := True;
    try
      AlphaSort;
    finally
      FTestingForSortProc := False;
    end;
  end;

var
  Column: TLVColumn;
begin
  CreateUnicodeHandle_ComCtl(Self, Params, WC_LISTVIEW);
  if (Win32PlatformIsUnicode) then begin
    if not Assigned(ComCtrls_DefaultListViewSort) then
      Capture_ComCtrls_DefaultListViewSort;
    // the only way I could get editing to work is after a column had been inserted
    Column.mask := 0;
    ListView_InsertColumn(Handle, 0, Column);
    ListView_DeleteColumn(Handle, 0);
  end;
end;

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

procedure TTntCustomListView.CreateWnd;
begin
  inherited;
  FreeAndNil(FSavedItems);
end;

procedure TTntCustomListView.DestroyWnd;
var
  i: integer;
  FSavedItem: TSavedListItem;
  Item: TTntListItem;
begin
  if (not (csDestroying in ComponentState)) and (not OwnerData) then begin
    FreeAndNil(FSavedItems); // fixes a bug on Windows 95.
    FSavedItems := TObjectList.Create(True);
    for i := 0 to Items.Count - 1 do begin
      FSavedItem := TSavedListItem.Create;
      Item := Items[i];
      FSavedItem.FCaption := Item.FCaption;
      FSavedItem.FSubItems.Assign(Item.FSubItems);
      FSavedItems.Add(FSavedItem)
    end;
  end;
  inherited;
end;

function TTntCustomListView.GetDropTarget: TTntListItem;
begin
  Result := inherited DropTarget as TTntListItem;
end;

procedure TTntCustomListView.SetDropTarget(const Value: TTntListItem);
begin
  inherited DropTarget := Value;
end;

function TTntCustomListView.GetItemFocused: TTntListItem;
begin
  Result := inherited ItemFocused as TTntListItem;
end;

procedure TTntCustomListView.SetItemFocused(const Value: TTntListItem);
begin
  inherited ItemFocused := Value;
end;

function TTntCustomListView.GetSelected: TTntListItem;
begin
  Result := inherited Selected as TTntListItem;
end;

procedure TTntCustomListView.SetSelected(const Value: TTntListItem);
begin
  inherited Selected := Value;
end;

function TTntCustomListView.GetTopItem: TTntListItem;
begin
  Result := inherited TopItem as TTntListItem;
end;

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

procedure TTntCustomListView.SetListColumns(const Value: TTntListColumns);
begin
  inherited Columns := Value;
end;

{$IFDEF COMPILER_6} // verified against VCL source in Delphi 6 and BCB 6
type
  THackListColumn = class(TCollectionItem)
  protected
    FxxxAlignment: TAlignment;
    FxxxAutoSize: Boolean;
    FxxxCaption: AnsiString;
    FxxxMaxWidth: TWidth;
    FxxxMinWidth: TWidth;
    FxxxImageIndex: TImageIndex;
    FxxxPrivateWidth: TWidth;
    FxxxWidth: TWidth;
    FOrderTag: Integer;
  end;
{$ENDIF}
{$IFDEF DELPHI_7} // verified against VCL source in Delphi 7
type
  THackListColumn = class(TCollectionItem)
  protected
    FxxxAlignment: TAlignment;
    FxxxAutoSize: Boolean;
    FxxxCaption: AnsiString;
    FxxxMaxWidth: TWidth;
    FxxxMinWidth: TWidth;
    FxxxImageIndex: TImageIndex;
    FxxxPrivateWidth: TWidth;
    FxxxWidth: TWidth;
    FOrderTag: Integer;
  end;
{$ENDIF}
{$IFDEF DELPHI_9} // verified against VCL source in Delphi 9
type
  THackListColumn = class(TCollectionItem)
  protected
    FxxxxxxxxAlignment: TAlignment;
    FxxxxAutoSize: Boolean;
    FxxxxCaption: AnsiString;
    FxxxxMaxWidth: TWidth;
    FxxxxMinWidth: TWidth;
    FxxxxImageIndex: TImageIndex;
    FxxxxPrivateWidth: TWidth;
    FxxxxWidth: TWidth;
    FOrderTag: Integer;
  end;
{$ENDIF}
{$IFDEF DELPHI_10} // verified against VCL source in Delphi 10
type
  THackListColumn = class(TCollectionItem)
  protected
    FxxxxxxxxAlignment: TAlignment;
    FxxxxAutoSize: Boolean;
    FxxxxCaption: AnsiString;
    FxxxxMaxWidth: TWidth;
    FxxxxMinWidth: TWidth;
    FxxxxImageIndex: TImageIndex;
    FxxxxPrivateWidth: TWidth;
    FxxxxWidth: TWidth;
    FOrderTag: Integer;
  end;
{$ENDIF}

function TTntCustomListView.GetColumnFromTag(Tag: Integer): TTntListColumn;
var
  I: Integer;
begin
  for I := 0 to Columns.Count - 1 do
  begin
    Result := Columns[I];
    if THackListColumn(Result).FOrderTag = Tag then Exit;
  end;
  Result := nil;
end;

function TTntCustomListView.ColumnFromIndex(Index: Integer): TTntListColumn;
begin
  Result := inherited Column[Index] as TTntListColumn;
end;

function TTntCustomListView.AreItemsStored: Boolean;
begin
  if Assigned(Action) then
  begin
    if Action is TCustomListAction{TNT-ALLOW TCustomListAction} then
      Result := False
    else
      Result := True;
  end
  else
    Result := not OwnerData;
end;

function TTntCustomListView.GetItems: TTntListItems;
begin
  Result := inherited Items as TTntListItems;
end;

procedure TTntCustomListView.SetItems(Value: TTntListItems);
begin
  inherited Items := Value;
end;

type TTntListItemClass = class of TTntListItem;

function TTntCustomListView.CreateListItem: TListItem{TNT-ALLOW TListItem};
var
  LClass: TClass;
  TntLClass: TTntListItemClass;
begin
  LClass := TTntListItem;
  if Assigned(OnCreateItemClass) then
    OnCreateItemClass(Self, TListItemClass(LClass));
  if not LClass.InheritsFrom(TTntListItem) then
    raise ETntInternalError.Create('Internal Error: OnCreateItemClass.ItemClass must inherit from TTntListItem.');
  TntLClass := TTntListItemClass(LClass);
  Result := TntLClass.Create(inherited Items);
  if FTempItem = nil then
    FTempItem := Result as TTntListItem; { In Delphi 5/6/7/9/10, the first item created is the temp item }
  { TODO: Verify that D11 creates a temp item in its constructor. }
end;

function TTntCustomListView.CreateListItems: TListItems{TNT-ALLOW TListItems};
begin
  Result := TTntListItems.Create(Self);
end;

function TTntCustomListView.GetItemW(Value: TLVItemW): TTntListItem;
begin
  with Value do begin
    if (mask and LVIF_PARAM) <> 0 then
      Result := TListItem{TNT-ALLOW TListItem}(lParam) as TTntListItem
    else if iItem >= 0 then
      Result := Items[IItem]
    else if OwnerData then
      Result := FTempItem
    else
      Result := nil
  end;
end;

function TTntCustomListView.OwnerDataFetchW(Item: TListItem{TNT-ALLOW TListItem}; Request: TItemRequest): Boolean;
begin
  Result := OwnerDataFetch(Item, Request);
end;

function TTntCustomListView.OwnerDataFetch(Item: TListItem{TNT-ALLOW TListItem}; Request: TItemRequest): Boolean;
begin
  if Assigned(OnData) then
  begin
    OnData(Self, Item);
    Result := True;
  end
  else Result := False;
end;

function TntDefaultListViewSort(Item1, Item2: TTntListItem; lParam: Integer): Integer; stdcall;
begin
  Assert(Win32PlatformIsUnicode);
  with Item1 do
    if Assigned(ListView.OnCompare) then
      ListView.OnCompare(ListView, Item1, Item2, lParam, Result)
    else Result := lstrcmpw(PWideChar(Item1.Caption), PWideChar(Item2.Caption));
end;

procedure TTntCustomListView.WndProc(var Message: TMessage);
var
  Item: TTntListItem;
  InheritedItem: TListItem{TNT-ALLOW TListItem};
  SubItem: Integer;
  SavedItem: TSavedListItem;
  PCol: PLVColumn;
  Col: TTntListColumn;
begin
  with Message do begin
    // restore previous values (during CreateWnd)
    if (FSavedItems <> nil) and (FChangingWideItemCount = 0) and (Msg = LVM_SETITEMTEXTA) then begin
      Item := Items[wParam];
      SavedItem := TSavedListItem(FSavedItems[wP

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本一道久久a久久精品| 99久久精品一区二区| 国产精品全国免费观看高清| 91国在线观看| 国产成人高清视频| 日韩成人精品视频| 亚洲品质自拍视频| 久久久精品免费观看| 91精品在线观看入口| a亚洲天堂av| 激情综合五月婷婷| 婷婷综合五月天| 一区二区三区视频在线看| 国产午夜一区二区三区| 欧美一二三区在线观看| 欧美性色综合网| 91色porny| 国产成人福利片| 国内精品视频666| 久久99热国产| 日韩av午夜在线观看| 亚洲一区二三区| 亚洲成人动漫av| 国产精品国产馆在线真实露脸 | 欧美一区二区三区思思人| 99久久99久久精品国产片果冻| 国产一区二区三区四区五区美女 | 91尤物视频在线观看| 粉嫩aⅴ一区二区三区四区五区| 日本免费新一区视频| 午夜电影久久久| 污片在线观看一区二区| 五月婷婷久久综合| 亚洲成人你懂的| 天天影视色香欲综合网老头| 亚洲午夜激情av| 午夜久久久影院| 亚洲成a人片在线不卡一二三区| 一区二区三区四区乱视频| 亚洲精品综合在线| 亚洲精品自拍动漫在线| 亚洲美女少妇撒尿| 亚洲一区二区三区在线播放| 亚洲午夜国产一区99re久久| 亚洲成人福利片| 全国精品久久少妇| 黄色小说综合网站| 国产成人免费av在线| 成人在线综合网| a美女胸又www黄视频久久| 一本一道波多野结衣一区二区| 色婷婷亚洲精品| 欧美人xxxx| 2022国产精品视频| 国产精品女人毛片| 一区二区三区影院| 天天综合日日夜夜精品| 久久99国产精品久久99果冻传媒| 国产一区欧美二区| 成人手机在线视频| 色八戒一区二区三区| 欧美男人的天堂一二区| 日韩欧美视频一区| 中文字幕精品综合| 一区二区三区色| 蜜臀av性久久久久蜜臀aⅴ | 欧美撒尿777hd撒尿| 欧美老肥妇做.爰bbww| 欧美成人a视频| 国产精品欧美极品| 国产精品一区三区| 99r精品视频| 欧美一区二区人人喊爽| 国产亚洲欧美一区在线观看| 亚洲色图在线看| 日本午夜精品视频在线观看 | 国产一区二区三区免费看| 波多野结衣中文一区| 欧美日韩性生活| 国产色产综合色产在线视频 | 亚洲一区二区视频在线观看| 美女在线一区二区| 91在线视频免费观看| 91麻豆精品国产91久久久资源速度| 精品美女被调教视频大全网站| 国产精品乱码一区二区三区软件 | 99精品一区二区三区| 爽好多水快深点欧美视频| 91麻豆精品91久久久久同性| 欧美国产视频在线| 亚洲大尺度视频在线观看| 国产99精品国产| 欧美一区二区久久久| 91论坛在线播放| 日本在线不卡视频一二三区| 亚洲另类春色校园小说| 国产亚洲精久久久久久| 精品成人在线观看| 欧美日韩视频在线一区二区| 色网综合在线观看| 97精品超碰一区二区三区| 风间由美一区二区三区在线观看| 日本美女一区二区| 亚洲一区二区美女| 亚洲黄色小视频| 亚洲免费观看在线视频| 国产欧美日韩激情| 久久精品这里都是精品| 精品国精品国产| 精品少妇一区二区三区视频免付费 | 偷拍与自拍一区| 亚洲一区二区视频在线观看| 亚洲精品日日夜夜| 亚洲女女做受ⅹxx高潮| 日韩美女视频一区| 一卡二卡欧美日韩| 性感美女久久精品| 日日骚欧美日韩| 免费成人在线影院| 久久99国产乱子伦精品免费| 九九精品一区二区| 国产乱码字幕精品高清av| 国产精品一二三区| 成人免费高清视频在线观看| 成人av免费网站| 在线观看国产日韩| 日韩一区二区中文字幕| 337p日本欧洲亚洲大胆精品| 久久精品日产第一区二区三区高清版 | 欧美日韩精品一区二区三区| 欧美日韩一区二区在线观看| 欧美猛男超大videosgay| 欧美另类高清zo欧美| 精品欧美黑人一区二区三区| 欧美激情在线一区二区三区| 18成人在线观看| 无码av免费一区二区三区试看| 久久国产视频网| 不卡影院免费观看| 欧美久久久影院| 精品久久久久一区| 成人免费在线视频观看| 午夜一区二区三区在线观看| 九一久久久久久| 99精品热视频| 日韩西西人体444www| 国产午夜精品福利| 亚洲国产日韩一级| 国产精品一区二区不卡| 色88888久久久久久影院野外| 欧美一级高清片在线观看| 中文字幕av一区二区三区| 亚洲高清一区二区三区| 国产精品18久久久久久久久久久久 | 欧美精品一区二区在线观看| 中文字幕一区二| 强制捆绑调教一区二区| aa级大片欧美| 欧美精品一区二区三区蜜桃| 亚洲精品老司机| 国产一区二区三区精品视频| 欧洲精品一区二区| 日本一区二区视频在线观看| 婷婷国产v国产偷v亚洲高清| 国产福利视频一区二区三区| 欧美日韩国产小视频在线观看| xnxx国产精品| 日韩福利视频导航| 91网址在线看| 国产欧美日韩在线视频| 日韩经典中文字幕一区| 91捆绑美女网站| 久久精品视频在线看| 青椒成人免费视频| 欧美午夜一区二区三区| 国产精品视频你懂的| 精品一区二区三区在线播放视频| 欧美三级日韩三级| 一区二区三区在线影院| 9i在线看片成人免费| 国产女主播一区| 国产精品中文字幕欧美| 日韩一区二区在线观看| 亚洲电影激情视频网站| 91亚洲精华国产精华精华液| 中文乱码免费一区二区| 国产精品一二一区| 精品精品国产高清a毛片牛牛| 日本成人在线看| 欧美精品自拍偷拍动漫精品| 一区二区高清视频在线观看| 91丝袜高跟美女视频| 国产精品久久久久久户外露出 | 国产成人综合自拍| 亚洲精品一区二区三区四区高清| 人人狠狠综合久久亚洲| 欧美一区二区三区影视| 日本不卡视频一二三区| 91精品国产欧美一区二区18| 午夜欧美一区二区三区在线播放|