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

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

?? dbgrideh.pas

?? Delphi控件源碼
?? PAS
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
{*******************************************************}
{                                                       }
{                       EhLib v1.56                     }
{                   TDBGridEh component                 }
{                                                       }
{   Copyright (c) 1998, 2000 by Dmitry V. Bolshakov     }
{                                                       }
{*******************************************************}


//{$define eval}

unit DBGridEh;

{$R-}
{$I EhLib.Inc}

interface

uses Windows, SysUtils, Messages, Classes, Controls, Forms, StdCtrls,
  Graphics, Grids, DBCtrls, Db, Menus, DBGrids, Registry, DBSumLst, IniFiles
{$IFDEF EH_LIB_4} ,ImgList, StdActns {$ENDIF}
{$IFNDEF EH_LIB_4} {Borland Delphi 3.0 or C++ Builder 3.0}
,MonthCal
{$ENDIF}
  {,dbugintf};

type
  TColumnEhValue = (cvColor, cvWidth, cvFont, cvAlignment, cvReadOnly, cvTitleColor,
    cvTitleCaption, cvTitleAlignment, cvTitleFont, cvImeMode, cvImeName, cvWordWrap,
    cvLookupDisplayFields, cvCheckboxes);
  TColumnEhValues = set of TColumnEhValue;

  TColumnFooterEhValue = (cvFooterAlignment, cvFooterFont, cvFooterColor);
  TColumnFooterValues = set of TColumnFooterEhValue;

  TColumnEhRestoreParam = (crpColIndexEh,crpColWidthsEh,crpSortMarkerEh,crpColVisibleEh);
  TColumnEhRestoreParams = set of TColumnEhRestoreParam;

  TDBGridEhRestoreParam = (grpColIndexEh,grpColWidthsEh,grpSortMarkerEh,grpColVisibleEh,grpRowHeightEh);
  TDBGridEhRestoreParams = set of TDBGridEhRestoreParam;


{$IFNDEF EH_LIB_35}
  TCustomIniFile = TIniFile;
{$ENDIF}

const
  ColumnEhTitleValues = [cvTitleColor..cvTitleFont];
  ColumnEhFooterValues = [cvFooterAlignment..cvFooterColor];
(*  cm_DeferLayout = WM_USER + 100; *)

{ TColumnEh defines internal storage for column attributes.  Values assigned
  to properties are stored in this object, the grid- or field-based default
  sources are not modified.  Values read from properties are the previously
  assigned value, if any, or the grid- or field-based default values if
  nothing has been assigned to that property. This class also publishes the
  column attribute properties for persistent storage.  }

type
  TColumnEh = class;
  TCustomDBGridEh = class;

  TSortMarkerEh = (smNoneEh, smDownEh, smUpEh);

  TColumnTitleEh = class(TPersistent)
  private
    FColumn: TColumnEh;
    FCaption: string;
    FFont: TFont;
    FColor: TColor;
    FAlignment: TAlignment;
    //ddd
    FEndEllipsis: Boolean;
    FSortIndex: Integer;
    FHint: string;
    FImageIndex: Integer;
    FToolTips: Boolean;
    //\\\
    procedure FontChanged(Sender: TObject);
    function GetAlignment: TAlignment;
    function GetColor: TColor;
    function GetCaption: string;
    function GetFont: TFont;
    function IsAlignmentStored: Boolean;
    function IsColorStored: Boolean;
    function IsFontStored: Boolean;
    function IsCaptionStored: Boolean;
    procedure SetAlignment(Value: TAlignment);
    procedure SetColor(Value: TColor);
    procedure SetFont(Value: TFont);
    procedure SetCaption(const Value: string); virtual;
    procedure SetEndEllipsis(const Value: Boolean);
    procedure SetSortIndex(Value: Integer);
    procedure SetImageIndex(const Value: Integer);
    function GetToolTips:Boolean;
    procedure SetToolTips(const Value: Boolean);
  protected
    //ddd
    FTitleButton: Boolean;
    FSortMarker: TSortMarkerEh;
    procedure SetTitleButton(Value: Boolean);
    procedure SetSortMarker(Value: TSortMarkerEh);
    //\\\
    procedure RefreshDefaultFont;
    function  GetSortMarkingWidth:Integer;
  public
    constructor Create(Column: TColumnEh);
    destructor Destroy; override;
    procedure Assign(Source: TPersistent); override;
    function DefaultAlignment: TAlignment;
    function DefaultColor: TColor;
    function DefaultFont: TFont;
    function DefaultCaption: string;
    procedure RestoreDefaults; virtual;
    procedure SetNextSortMarkerValue(KeepMulti:Boolean);
  published
    property Alignment: TAlignment read GetAlignment write SetAlignment stored IsAlignmentStored;
    property Caption: string read GetCaption write SetCaption stored IsCaptionStored;
    property Color: TColor read GetColor write SetColor stored IsColorStored;
    property Font: TFont read GetFont write SetFont stored IsFontStored;
    //ddd
    property TitleButton: Boolean read FTitleButton write SetTitleButton default False;
    property SortMarker: TSortMarkerEh read FSortMarker write SetSortMarker default smNoneEh;
    property EndEllipsis: Boolean read FEndEllipsis write SetEndEllipsis default False;
    property SortIndex: Integer read FSortIndex write SetSortIndex default 0;
    property Hint: string read FHint write FHint;
    property ImageIndex: Integer read FImageIndex write SetImageIndex default -1;
    property ToolTips: Boolean read GetToolTips write SetToolTips default False;
    //\\\
  end;


  //ddd
  TFooterValueType = (fvtNon,fvtSum,fvtCount,fvtFieldValue,fvtStaticText);

  TColumnFooterEh = class(TCollectionItem)
  private
    FColumn: TColumnEh;
    FFont: TFont;
    FColor: TColor;
    FAlignment: TAlignment;
    FEndEllipsis: Boolean;
    FValue:String;
    FFieldName: string;
    FValueType: TFooterValueType;
    FWordWrap: Boolean;
    FAssignedValues: TColumnFooterValues;
    procedure FontChanged(Sender: TObject);
    function GetAlignment: TAlignment;
    function GetColor: TColor;
    function GetFont: TFont;
    function IsAlignmentStored: Boolean;
    function IsColorStored: Boolean;
    function IsFontStored: Boolean;
    procedure SetAlignment(Value: TAlignment);
    procedure SetColor(Value: TColor);
    procedure SetFont(Value: TFont);
    procedure SetEndEllipsis(const Value: Boolean);
    procedure SetFieldName(const Value: String);
    procedure SetValueType(const Value: TFooterValueType);
    procedure SetValue(const Value: String);
    procedure SetWordWrap(const Value: Boolean);
  protected
    FDBSum:TDBSum;
    procedure RefreshDefaultFont;
  public
    constructor Create(Collection: TCollection); override;
    constructor CreateApart(Column: TColumnEh);
    destructor Destroy; override;
    procedure Assign(Source: TPersistent); override;
    function DefaultAlignment: TAlignment;
    function DefaultColor: TColor;
    function DefaultFont: TFont;
    procedure EnsureSumValue;
    procedure RestoreDefaults; virtual;
    property  AssignedValues: TColumnFooterValues read FAssignedValues;
    property Column: TColumnEh read FColumn;
  published
    property Alignment: TAlignment read GetAlignment write SetAlignment stored IsAlignmentStored;
    property Color: TColor read GetColor write SetColor stored IsColorStored;
    property Font: TFont read GetFont write SetFont stored IsFontStored;
    property EndEllipsis: Boolean read FEndEllipsis write SetEndEllipsis default False;
    property ValueType: TFooterValueType read FValueType write SetValueType default fvtNon;
    property FieldName: String read FFieldName write SetFieldName;
    property Value: String read FValue write SetValue;
    property WordWrap: Boolean read FWordWrap write SetWordWrap default False;
  end;


  TColumnFooterEhClass = class of TColumnFooterEh;

  TColumnFootersEh = class(TCollection)
  private
    FColumn: TColumnEh;
    function GetFooter(Index: Integer): TColumnFooterEh;
    procedure SetFooter(Index: Integer; Value: TColumnFooterEh);
  protected
    function GetOwner: TPersistent; override;
    procedure Update(Item: TCollectionItem); override;
  public
    constructor Create(Column: TColumnEh; FooterClass: TColumnFooterEhClass);
    function  Add: TColumnFooterEh;
    property Column: TColumnEh read FColumn;
    property Items[Index: Integer]: TColumnFooterEh read GetFooter write SetFooter; default;
  end;

  //\\\

  //ddd
  TColumnEhType = (ctCommon, ctPickList, ctLookupField, ctKeyPickList, ctKeyImageList, ctCheckboxes);
  TColumnButtonStyleEh = (cbsAuto, cbsEllipsis, cbsNone, cbsUpDown, cbsDropDown);
  //\\\

  TColumnEh = class(TCollectionItem)
  private
    FField: TField;
    FFieldName: string;
    FColor: TColor;
    FWidth: Integer;
    FTitle: TColumnTitleEh;
    FFont: TFont;
    FImeMode: TImeMode;
    FImeName: TImeName;
    FPickList: TStrings;
    FPopupMenu: TPopupMenu;
    FDropDownRows: Cardinal;
    FButtonStyle: TColumnButtonStyleEh;
    FAlignment: TAlignment;
    FReadonly: Boolean;
    FAssignedValues: TColumnEhValues;
    FFooter: TColumnFooterEh;
    FVisible: Boolean;
    //ddd
    FKeyList: TStrings;
    FImageList: {$IFDEF EH_LIB_4}TCustomImageList{$ELSE}TImageList{$ENDIF};
    FNotInKeyListIndex: Integer;
    FMinWidth: Integer;
    FMaxWidth: Integer;
    FNotInWidthRange:Boolean;
    FDblClickNextVal: Boolean;
    FCheckboxes: Boolean;
    FIncrement: Extended;
    FToolTips: Boolean;
    FFooters: TColumnFootersEh;
    //\\\
    procedure FontChanged(Sender: TObject);
    function  GetAlignment: TAlignment;
    function  GetColor: TColor;
    function  GetField: TField;
    function  GetFont: TFont;
    function  GetImeMode: TImeMode;
    function  GetImeName: TImeName;
    function  GetPickList: TStrings;
    function  GetReadOnly: Boolean;
    function  GetWidth: Integer;
    function  IsAlignmentStored: Boolean;
    function  IsColorStored: Boolean;
    function  IsFontStored: Boolean;
    function  IsImeModeStored: Boolean;
    function  IsImeNameStored: Boolean;
    function  IsReadOnlyStored: Boolean;
    function  IsWidthStored: Boolean;
    procedure SetAlignment(Value: TAlignment); virtual;
    procedure SetButtonStyle(Value: TColumnButtonStyleEh);
    procedure SetColor(Value: TColor);
    procedure SetField(Value: TField); virtual;
    procedure SetFieldName(const Value: String);
    procedure SetFont(Value: TFont);
    procedure SetImeMode(Value: TImeMode); virtual;
    procedure SetImeName(Value: TImeName); virtual;
    procedure SetPickList(Value: TStrings);
    procedure SetPopupMenu(Value: TPopupMenu);
    procedure SetReadOnly(Value: Boolean); virtual;
    procedure SetTitle(Value: TColumnTitleEh);
    procedure SetWidth(Value: Integer); virtual;
    //ddd
    procedure SetFooter(const Value: TColumnFooterEh);
    procedure SetVisible(const Value: Boolean);
    function GetKeykList: TStrings;
    procedure SetKeykList(const Value: TStrings);
    procedure SetNotInKeyListIndex(const Value: Integer);
    procedure SetImageList(const Value: {$IFDEF EH_LIB_4}TCustomImageList{$ELSE}TImageList{$ENDIF});
    procedure SetMaxWidth(const Value: Integer);
    procedure SetMinWidth(const Value: Integer);
    function GetCheckboxes: Boolean;
    procedure SetCheckboxes(const Value: Boolean);
    function DefaultCheckboxes: Boolean;
    function GetCheckboxState: TCheckBoxState;
    procedure SetCheckboxState(const Value: TCheckBoxState);
    function  IsCheckboxesStored: Boolean;
    function IsIncrementStored: Boolean;
    function GetToolTips:Boolean;
    procedure SetToolTips(const Value: Boolean);
    procedure SetFooters(const Value: TColumnFootersEh);
    //\\\
  protected
//ddd
    FInitWidth:Integer;
    FAutoFitColWidth:Boolean;
    FWordWrap:Boolean;
    FEndEllipsis: Boolean;
    FDropDownWidth: Integer;
    FLookupDisplayFields:String;
    FAlwaysShowEditButton: Boolean;
    FAutoDropDown: Boolean;
    function  GetAutoFitColWidth: Boolean;
    function  GetLookupDisplayFields: String;
    function  GetWordWrap: Boolean;
    function  IsWordWrapStored: Boolean;
    function  IsLookupDisplayFieldsStored: Boolean;
    function  DefaultLookupDisplayFields: String;
    function  DefaultWordWrap: Boolean;
    procedure SetAlwaysShowEditButton(Value: Boolean);
    procedure SetAutoDropDown(Value: Boolean);
    procedure SetAutoFitColWidth(Value: Boolean); virtual;
    procedure SetWordWrap(Value: Boolean); virtual;
    procedure SetLookupDisplayFields(Value:String); virtual;
    procedure SetDropDownWidth(Value: Integer);
    procedure SetEndEllipsis(const Value: Boolean);
    function  CreateFooter: TColumnFooterEh; virtual;
    procedure SetNextFieldValue(Increment: Extended);
    function  AllowableWidth(TryWidth:Integer):Integer;
    procedure EnsureSumValue;
//\\\
    function  CreateTitle: TColumnTitleEh; virtual;
    function  CreateFooters: TColumnFootersEh; virtual;
    function  GetGrid: TCustomDBGridEh;
    function GetDisplayName: string; override;
    procedure RefreshDefaultFont;
  public
    constructor Create(Collection: TCollection); override;
    destructor Destroy; override;

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久久久免费丝袜| 欧美三区在线视频| 最新国产の精品合集bt伙计| 在线不卡的av| 99国产精品国产精品久久| 日韩成人伦理电影在线观看| 亚洲久草在线视频| 日韩美女一区二区三区| 91久久精品国产91性色tv| 国产又黄又大久久| 日本亚洲电影天堂| 一区二区三区不卡在线观看 | 日韩欧美激情在线| 日本道在线观看一区二区| 美国三级日本三级久久99| 一区二区三区四区av| 国产视频一区二区在线观看| 波多野结衣亚洲一区| 亚洲婷婷在线视频| 国产亚洲综合色| 日韩免费高清电影| 7777精品久久久大香线蕉| 久久这里只有精品首页| 欧美这里有精品| 97精品视频在线观看自产线路二| 国产精品资源在线观看| 精品一区二区三区免费播放| 五月天激情综合| 亚洲一区二区精品3399| 亚洲精品视频在线观看免费| 国产精品美女久久久久久久久久久| 日韩久久精品一区| 欧美大片在线观看一区| 日韩小视频在线观看专区| 欧美日韩在线播放一区| 欧美色中文字幕| 欧美撒尿777hd撒尿| 在线亚洲精品福利网址导航| 91在线porny国产在线看| 国产精品2024| 国产成人精品一区二区三区四区| 狠狠色综合播放一区二区| 亚洲电影视频在线| 亚洲综合网站在线观看| 亚洲最大成人网4388xx| 一区二区欧美视频| 亚洲综合色网站| 亚洲高清免费一级二级三级| 视频一区中文字幕| 免费人成在线不卡| 国产一区二区三区在线观看精品| 国产专区综合网| 风间由美一区二区三区在线观看| 国产91精品免费| 99久久精品国产导航| 91黄色免费版| 91精品婷婷国产综合久久性色| 欧美大尺度电影在线| 亚洲一区二区三区不卡国产欧美| 日韩一区有码在线| 亚洲国产综合人成综合网站| 亚洲国产综合人成综合网站| 美女mm1313爽爽久久久蜜臀| 精品一区二区在线视频| 成人app在线| 欧美三级资源在线| 精品久久久久久久久久久久久久久久久 | caoporm超碰国产精品| 色婷婷精品久久二区二区蜜臀av| 欧美美女视频在线观看| 精品欧美一区二区在线观看| 欧美激情一区二区三区蜜桃视频| 最近日韩中文字幕| 热久久国产精品| 成人毛片老司机大片| 欧美无砖专区一中文字| 久久综合九色综合97_久久久| 自拍偷拍国产精品| 日本强好片久久久久久aaa| 国产成人午夜视频| 欧美日韩久久一区| 国产精品污www在线观看| 天天影视色香欲综合网老头| 成人一区二区三区中文字幕| 欧美日韩高清影院| 国产精品免费丝袜| 日日嗨av一区二区三区四区| 成人国产精品免费| 日韩一级高清毛片| 一区二区三区加勒比av| 国产精品综合在线视频| 欧美日韩精品免费观看视频| 中文在线资源观看网站视频免费不卡 | 成人黄色大片在线观看| 91精品蜜臀在线一区尤物| 1024精品合集| 国产在线国偷精品免费看| 欧美色区777第一页| 中文字幕第一区综合| 日本成人在线看| 欧美主播一区二区三区| 国产精品视频一二三| 久久精品国产色蜜蜜麻豆| 在线亚洲一区观看| 欧美极品少妇xxxxⅹ高跟鞋 | 久久久久久99精品| 一区二区三区四区国产精品| 成人免费毛片a| 久久精品一区二区三区不卡牛牛| 亚洲高清免费视频| 91在线观看一区二区| 久久久久久久av麻豆果冻| 日本91福利区| 欧美日韩国产一二三| 亚洲黄色性网站| 91在线视频免费91| 国产精品视频你懂的| 国产传媒一区在线| 国产午夜亚洲精品理论片色戒| 奇米精品一区二区三区在线观看| 欧美国产禁国产网站cc| 韩国女主播成人在线| 欧美大片在线观看一区| 午夜精品久久久久久久99樱桃| 成人午夜精品在线| 国产日产欧美一区| 国产精品中文字幕一区二区三区| 精品日韩av一区二区| 久久精品999| 久久综合久久综合亚洲| 国内精品第一页| 亚洲精品在线观看网站| 国产一区高清在线| 欧美www视频| 国产中文字幕精品| 国产日韩欧美精品电影三级在线| 国产在线精品一区二区| 国产三级精品在线| 成人做爰69片免费看网站| 国产精品色在线| 色哟哟国产精品免费观看| 亚洲视频在线一区二区| 韩国女主播成人在线观看| 久久久久国产精品麻豆ai换脸| 国产一区二区三区综合| 国产精品色一区二区三区| 99热在这里有精品免费| 亚洲精品视频一区| 欧美日韩免费不卡视频一区二区三区| 五月天一区二区三区| 欧美大片在线观看| 成人永久aaa| 一区二区在线观看免费视频播放| 欧美体内she精高潮| 日本不卡免费在线视频| 久久欧美中文字幕| 99久久精品免费| 香蕉成人伊视频在线观看| 欧美一区二区女人| 国产成人综合在线观看| 亚洲国产高清在线观看视频| 日本高清视频一区二区| 日韩制服丝袜av| 久久精品亚洲乱码伦伦中文| 成人h版在线观看| 亚洲一区二区视频在线观看| 欧美一级国产精品| 成人午夜免费电影| 中文字幕av一区 二区| 色94色欧美sute亚洲线路一久| 亚洲一区影音先锋| 精品裸体舞一区二区三区| 欧美精品一区二区三区在线 | 男男gaygay亚洲| 国产三级欧美三级日产三级99| 色综合激情久久| 精品亚洲成a人| 伊人性伊人情综合网| 精品免费日韩av| 色欧美片视频在线观看| 狠狠色2019综合网| 亚洲精品大片www| 精品国产免费一区二区三区四区 | 久久久亚洲高清| 在线精品视频免费播放| 国内偷窥港台综合视频在线播放| 亚洲欧美日韩在线| 久久久青草青青国产亚洲免观| 欧美午夜在线观看| 成人在线一区二区三区| 免费人成精品欧美精品| 亚洲精品老司机| 国产亚洲欧美一区在线观看| 欧美日韩dvd在线观看| 本田岬高潮一区二区三区| 毛片不卡一区二区| 夜夜精品视频一区二区| 国产精品三级av| 2019国产精品| 日韩一区二区免费在线观看|