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

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

?? dbgrideh.pas

?? Delphi控件源碼
?? PAS
?? 第 1 頁 / 共 5 頁
字號:

  { The DBGridEh's DrawDataCell virtual method and OnDrawDataCell event are only
    called when the grid's Columns.State is csDefault.  This is for compatibility
    with existing code. These routines don't provide sufficient information to
    determine which column is being drawn, so the column attributes aren't
    easily accessible in these routines.  Column attributes also introduce the
    possibility that a column's field may be nil, which would break existing
    DrawDataCell code.   DrawDataCell, OnDrawDataCell, and DefaultDrawDataCell
    are obsolete, retained for compatibility purposes. }
(*  TDrawDataCellEvent = procedure (Sender: TObject; const Rect: TRect; Field: TField;
    State: TGridDrawState) of object; *)

  { The DBGridEh's DrawColumnCell virtual method and OnDrawColumnCell event are
    always called, when the grid has defined column attributes as well as when
    it is in default mode.  These new routines provide the additional
    information needed to access the column attributes for the cell being
    drawn, and must support nil fields.  }


  TDrawColumnEhCellEvent = procedure (Sender: TObject; const Rect: TRect;
    DataCol: Integer; Column: TColumnEh; State: TGridDrawState) of object;
  TDBGridEhClickEvent = procedure (Column: TColumnEh) of object;
  TDrawFooterCellEvent = procedure (Sender: TObject; DataCol, Row: Longint;
    Column: TColumnEh; Rect: TRect; State: TGridDrawState) of object;
  TGetFooterParamsEvent = procedure (Sender: TObject; DataCol, Row: Longint;
    Column: TColumnEh; AFont: TFont; var Background: TColor;
    var Alignment : TAlignment; State: TGridDrawState; var Text:String) of object;

  TTitleEhClickEvent = procedure (Sender: TObject; ACol: Longint;
    Column: TColumnEh) of object;
  TCheckTitleEhBtnEvent = procedure (Sender: TObject; ACol: Longint;
    Column: TColumnEh; var Enabled: Boolean) of object;
  TGetBtnEhParamsEvent = procedure (Sender: TObject; Column: TColumnEh;
    AFont: TFont; var Background: TColor; var SortMarker: TSortMarkerEh;
    IsDown: Boolean) of object;
  TGetCellEhParamsEvent = procedure (Sender: TObject; Column: TColumnEh;
    AFont: TFont; var Background: TColor; State: TGridDrawState) of object;

  { Internal grid types }
  TGridAxisDrawInfoEh = record
    EffectiveLineWidth: Integer;
    FixedBoundary: Integer;
    GridBoundary: Integer;
    GridExtent: Integer;
    LastFullVisibleCell: Longint;
    FullVisBoundary: Integer;
    FixedCellCount: Integer;
    FirstGridCell: Integer;
    GridCellCount: Integer;
    GetExtent: TGetExtentsFunc;
    FrozenExtent:Integer;
    FooterExtent:Integer;
  end;

  TGridDrawInfoEh = record
    Horz, Vert: TGridAxisDrawInfoEh;
  end;

  TCustomDBGridEh = class(TCustomGrid)
  private
    FIndicators: TImageList;
    FTitleFont: TFont;
    FReadOnly: Boolean;
    FOriginalImeName: TImeName;
    FOriginalImeMode: TImeMode;
    FUserChange: Boolean;
    FLayoutFromDataset: Boolean;
    FOptions: TDBGridOptions;
    FTitleOffset, FIndicatorOffset: Byte;
    FUpdateLock: Byte;
    FLayoutLock: Byte;
    FInColExit: Boolean;
    FDefaultDrawing: Boolean;
    FSelfChangingTitleFont: Boolean;
    FSelecting: Boolean;
    FSelRow: Integer;
    FDataLink: TGridDataLinkEh;
    FOnColEnter: TNotifyEvent;
    FOnColExit: TNotifyEvent;
    FOnDrawDataCell: TDrawDataCellEvent;
    FOnDrawColumnCell: TDrawColumnEhCellEvent;
    FEditText: string;
    FColumns: TDBGridColumnsEh;
    FOnEditButtonClick: TNotifyEvent;
    FOnColumnMoved: TMovedEvent;
    FBookmarks: TBookmarkListEh;
    FSelectionAnchor: TBookmarkStr;
    FOnCellClick: TDBGridEhClickEvent;
    FOnTitleClick:TDBGridEhClickEvent;
    //ddd
    FOnGetCellParams: TGetCellEhParamsEvent;
    FOnGetFooterParams: TGetFooterParamsEvent;
    FOnSumListRecalcAll: TNotifyEvent;
    FHorzScrollBar: TDBGridEhScrollBar;
    FVertScrollBar: TDBGridEhScrollBar;
    FOptionsEh: TDBGridEhOptions;
    FEditKeyValue: Variant; // For lookup fields and KeyList based column
    ThumbTracked:Boolean;
    FOnSortMarkingChanged: TNotifyEvent;
    FOnColWidthsChanged: TNotifyEvent;
    FSortMarking:Boolean;
    FUpDownBitmap:TBitmap;
    FTopLeftVisible:Boolean;
    FSelection: TDBGridEhSelection;
    FAutoDrag, FSelectedCellPressed:Boolean;
//    FHintCell: TGridCoord;
    FTitleImages: {$IFDEF EH_LIB_4}TCustomImageList{$ELSE}TImageList{$ENDIF};
    FAllowedOperations: TDBGridEhAllowedOperations;
    FSizingIndex: Longint;
    FSizingPos, FSizingOfs: Integer;
    FSelfChangingFooterFont: Boolean;
    FFooterFont: TFont;
    FFooterColor: TColor;
    FHintFont:TFont;
    FFlat: Boolean;
    FInterlinear:Integer;
    FBorderWidth:Integer;
    FEditActions: TDBGridEhEditActions;
    //\\\

    function AcquireFocus: Boolean;
    procedure DataChanged;
    procedure EditingChanged;
    function GetDataSource: TDataSource;
    function GetFieldCount: Integer;
    function GetFields(FieldIndex: Integer): TField;
    function GetSelectedField: TField;
    function GetSelectedIndex: Integer;
    procedure InternalLayout;
    procedure MoveCol(RawCol, Direction: Integer; Select:Boolean);
    procedure ReadColumns(Reader: TReader);
    procedure RecordChanged(Field: TField);
    procedure SetIme;
    procedure SetColumns(Value: TDBGridColumnsEh);
    procedure SetDataSource(Value: TDataSource);
    procedure SetOptions(Value: TDBGridOptions);
    procedure SetSelectedField(Value: TField);
    procedure SetSelectedIndex(Value: Integer);
    procedure SetTitleFont(Value: TFont);
    procedure TitleFontChanged(Sender: TObject);
    procedure UpdateData;
    procedure UpdateActive;
    procedure UpdateIme;
    procedure UpdateScrollBar;
    procedure UpdateRowCount;
    procedure WriteColumns(Writer: TWriter);
    procedure CMExit(var Message: TMessage); message CM_EXIT;
    procedure CMFontChanged(var Message: TMessage); message CM_FONTCHANGED;
    procedure CMParentFontChanged(var Message: TMessage); message CM_PARENTFONTCHANGED;
    procedure CMDeferLayout(var Message); message cm_DeferLayout;
    procedure CMDesignHitTest(var Msg: TCMDesignHitTest); message CM_DESIGNHITTEST;
    procedure WMSetCursor(var Msg: TWMSetCursor); message WM_SETCURSOR;
    procedure WMSize(var Message: TWMSize); message WM_SIZE;
    procedure WMVScroll(var Message: TWMVScroll); message WM_VSCROLL;
    procedure WMHScroll(var Message: TWMHScroll); message WM_HSCROLL;
    procedure WMIMEStartComp(var Message: TMessage); message WM_IME_STARTCOMPOSITION;
    procedure WMSetFocus(var Message: TWMSetFocus); message WM_SetFOCUS;
    procedure WMKillFocus(var Message: TMessage); message WM_KillFocus;
    procedure WMEraseBkgnd(var Message: TWmEraseBkgnd); message WM_ERASEBKGND; //tmp
    procedure WMNCPaint(var Message: TMessage);  message WM_NCPAINT;
    procedure WMNCCalcSize(var Message: TWMNCCalcSize); message WM_NCCALCSIZE;
    procedure SetDrawMemoText(const Value: Boolean);
    procedure SetSumList(const Value: TDBGridEhSumList);
    procedure SetHorzScrollBar(const Value: TDBGridEhScrollBar);
    procedure SetVertScrollBar(const Value: TDBGridEhScrollBar);
    procedure SetOptionsEh(const Value: TDBGridEhOptions);
    //ddd
    procedure WMChar(var Message: TWMChar); message WM_CHAR;
    procedure WMTimer(var Message: TMessage); message WM_TIMER;
    procedure ClearSelection;
    procedure DoSelection(Select: Boolean; Direction: Integer; MaxDirection,RowOnly: Boolean);
    function  UpDownBitmap: TBitmap;
    procedure CMHintShow(var Message: TCMHintShow); message CM_HINTSHOW;
    {$IFDEF EH_LIB_4}
    procedure CMHintsShowPause(var Message: TCMHintShowPause); message CM_HINTSHOWPAUSE;
    {$ENDIF}
    procedure CMParentColorChanged(var Message: TMessage); message CM_PARENTCOLORCHANGED;
    procedure SetTitleImages(const Value: {$IFDEF EH_LIB_4}TCustomImageList{$ELSE}TImageList{$ENDIF});
    function  GetCol: Longint;
    procedure SetCol(Value: Longint);
    procedure SetFooterFont(Value: TFont);
    procedure FooterFontChanged(Sender: TObject);
    procedure SetFooterColor(Value: TColor);
    function IsActiveControl: Boolean;
    procedure ChangeGridOrientation(RightToLeftOrientation: Boolean);
    procedure CalcDrawInfoXYEh(var DrawInfo: TGridDrawInfoEh; UseWidth, UseHeight: Integer);
    function GetRowHeights(Index: Longint): Integer;
    {$IFNDEF EH_LIB_4} {Borland Delphi 3.0 or C++ Builder 3.0}
    function UseRightToLeftAlignment: Boolean;
    {$ENDIF}
    procedure SetFlat(const Value: Boolean);
    procedure DrawEdgeEh(ACanvas:TCanvas;var qrc: TRect; IsDown,IsSelected:Boolean; NeedLeft,NeedRight:Boolean);
    //\\\
  protected

    FUpdateFields: Boolean;
    FAcquireFocus: Boolean;
    FUpdatingEditor: Boolean;


    //ddd
    FDBGridEhState: TDBGridEhState;
    FTitleHeight: Integer;
    FTitleLines: Integer;
    FTitleHeightFull: Integer;

    FMarginText:Boolean;
    FVTitleMargin: Integer;
    FHTitleMargin: Integer;
    FUseMultiTitle: Boolean;

    FAutoFitColWidths:Boolean;
    FMinAutoFitWidth:Integer;
    FInitColWidth:TList;

    FFooterRowCount: Integer;
    FOnDrawFooterCell:TDrawFooterCellEvent;

    FHeadTree:THeadTreeNode;
    FLeafFieldArr:PTLeafCol;
    FNewRowHeight: Integer;
    FRowLines: Integer;
    FRowSizingAllowed : Boolean;
    FDefaultRowChanged: Boolean;
    FAllowWordWrap: Boolean; // True if RowHeight + 3 > TextHeight
    FDrawMemoText: Boolean;
    FSortMarkerImages:TImageList;
    FPressedCol: Longint;
    FPressed: Boolean;
    FTracking: Boolean;
    FSwapButtons: Boolean;
    FOnCheckButton: TCheckTitleEhBtnEvent;
    FOnGetBtnParams: TGetBtnEhParamsEvent;
    FOnTitleBtnClick: TTitleEhClickEvent;
    FInplaceEditorButtonWidth: Integer;
    FFrozenCols: Integer;
    FSumList:TDBGridEhSumList;
    FVisibleColumns:TColumnsEhList;
    FPressedCell:TGridCoord;
    FIndicatorPressed:Boolean;
    FDownMousePos: TPoint;
    FMoveMousePos: TPoint;
    FMouseShift:TShiftState;
    FTimerActive:Boolean;
    FTimerInterval:Integer;
    FPresedRecord:TBookMarkStr;
    FSelectionAnchorSelected:Boolean;
    FAntiSelection:Boolean;
    FDataTracking:Boolean;
    FSortMarkedColumns:TColumnsEhList;
    FLockPaint:Boolean;
    FLockedBookmark:TBookmarkStr;
    FLookedOffset:Integer;
//    FFrozenFocuse:Boolean;
    FFrozenCol:Integer;
    //

    procedure Paint;override; //


    function  GetFooterRowCount: Integer;
    procedure SetFooterRowCount(Value: Integer);

    procedure ClearPainted(node:THeadTreeNode);
    function SetChildTreeHeight(ANode:THeadTreeNode):Integer;

    function  ReadTitleHeight: Integer;
    procedure WriteTitleHeight(th: Integer);
    function  ReadTitleLines: Integer;
    procedure WriteTitleLines(tl: Integer);

    procedure WriteMarginText(IsMargin:Boolean);
    procedure WriteVTitleMargin(Value: Integer);
    procedure WriteHTitleMargin(Value: Integer);
    procedure WriteUseMultiTitle(Value:Boolean);

    procedure WriteAutoFitColWidths(Value:Boolean);
    procedure WriteMinAutoFitWidth(Value:Integer);

    function GetColWidths(Index: Longint): Integer;
    procedure SetColWidths(Index: Longint; Value: Integer);

    procedure SetRowSizingAllowed(Value:Boolean);

    function  GetRowHeight: Integer;
    procedure SetRowHeight(Value: Integer);

    function  GetRowLines: Integer;
    procedure SetRowLines(Value: Integer);

    procedure RowHeightsChanged; override;
    function  StdDefaultRowHeight: Integer;

    procedure StopTracking;
    procedure TrackButton(X, Y: Integer);
    procedure WMCancelMode(var Message: TMessage); message WM_CANCELMODE;
    procedure CMCancelMode(var Message: TCMCancelMode); message CM_CancelMode;
    procedure DoTitleClick(ACol: Longint; AColumn: TColumnEh); dynamic;
    procedure CheckTitleButton(ACol: Longint; var Enabled: Boolean); dynamic;
    procedure GetCellParams(Column: TColumnEh; AFont: TFont; var Background: TColor;
      State: TGridDrawState ); dynamic;
    procedure SetFrozenCols(Value: Integer);
    procedure EnsureFooterValueType(AFooterValueType:TFooterValueType; AFieldName:String);
    procedure SumListChanged(Sender: TObject);
    procedure SumListRecalcAll(Sender: TObject);
    procedure GetFooterParams(DataCol, Row: Longint; Column: TColumnEh; AFont: TFont;
      var Background: TColor; var Alignment : TAlignment; State: TGridDrawState; var Text:String); dynamic;
    function  CanEditModifyText: Boolean;
    function  VisibleDataRowCount: Integer;
    procedure TimerScroll;
    procedure StopTimer;
    procedure ResetTimer(Interval: Integer);
    procedure DoSortMarkingChanged; dynamic;
//\\\
    function  RawToDataColumn(ACol: Integer): Integer;
    function  DataToRawColumn(ACol: Integer): Integer;
    function  AcquireLayoutLock: Boolean;
    procedure BeginLayout;
    procedure BeginUpdate;
    procedure CancelLayout;
    function  CanEditAcceptKey(Key: Char): Boolean; override;
    function  CanEditModify: Boolean; override;
    function  CanEditShow: Boolean; override;
    procedure CellClick(Column: TColumnEh); dynamic;
    procedure ColumnMoved(FromIndex, ToIndex: Longint); override;
    procedure ColEnter; dynamic;
    procedure ColExit; dynamic;
    procedure ColWidthsChanged; override;
    function  CreateColumns: TDBGridColumnsEh; dynamic;
    function  CreateEditor: TInplaceEdit; override;
    procedure CreateWnd; override;
    procedure DeferLayout;
    procedure WndProc(var Message: TMessage); override;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久国产剧场电影| 全国精品久久少妇| 91亚洲男人天堂| 亚洲精品中文在线影院| 91捆绑美女网站| 伊人开心综合网| 欧美天堂亚洲电影院在线播放| 亚洲一区在线观看网站| 欧美日韩久久一区二区| 麻豆精品视频在线| 国产网红主播福利一区二区| 99天天综合性| 日韩福利电影在线| 国产日产欧美精品一区二区三区| 91网址在线看| 久久精品国产亚洲a| 欧美极品少妇xxxxⅹ高跟鞋| 在线观看欧美日本| 精品一区中文字幕| 成人欧美一区二区三区小说| 欧美日韩一区二区三区四区五区| 老司机一区二区| 亚洲三级在线免费观看| 欧美精品在欧美一区二区少妇| 久久av中文字幕片| 亚洲人成伊人成综合网小说| 制服丝袜日韩国产| 成人国产精品免费网站| 日韩福利电影在线观看| 亚洲欧洲日韩综合一区二区| 日韩午夜激情av| 91免费精品国自产拍在线不卡| 日韩高清一级片| 亚洲美女视频一区| 精品国产精品网麻豆系列| 99综合电影在线视频| 老司机精品视频在线| 亚洲美女淫视频| 久久精品人人做| 91麻豆精品国产91久久久久久| 成人毛片视频在线观看| 奇米影视一区二区三区| 自拍偷拍欧美精品| 国产欧美综合在线观看第十页| 538在线一区二区精品国产| av色综合久久天堂av综合| 久久电影网电视剧免费观看| 亚洲最大色网站| 国产精品免费久久| 26uuuu精品一区二区| 制服丝袜亚洲播放| 欧美色中文字幕| 色悠悠亚洲一区二区| 国产精品一区一区三区| 日韩电影免费一区| 亚洲bdsm女犯bdsm网站| 最新日韩在线视频| 久久亚洲春色中文字幕久久久| 欧美群妇大交群中文字幕| 色噜噜夜夜夜综合网| 成人在线一区二区三区| 国产精品一区2区| 久久精品二区亚洲w码| 日本欧美一区二区| 日本欧美在线观看| 丝袜美腿亚洲综合| 香蕉影视欧美成人| 亚洲高清中文字幕| 午夜久久电影网| 亚洲国产精品一区二区www在线| 一区免费观看视频| 综合色天天鬼久久鬼色| 国产精品美女久久久久高潮| 中文字幕欧美激情一区| 国产精品国产三级国产aⅴ无密码| 国产欧美日本一区二区三区| 欧美激情一区在线观看| 国产欧美日韩久久| 亚洲欧洲一区二区三区| 最新不卡av在线| 怡红院av一区二区三区| 亚洲高清免费观看高清完整版在线观看| 亚洲欧美激情视频在线观看一区二区三区| 国产精品理伦片| 亚洲色图在线视频| 亚洲一区二区在线观看视频| 亚洲一区在线视频观看| 男女性色大片免费观看一区二区 | 麻豆一区二区三| 韩国午夜理伦三级不卡影院| 狠狠久久亚洲欧美| 成人三级在线视频| 91行情网站电视在线观看高清版| 欧美图片一区二区三区| 欧美一区二视频| 久久综合网色—综合色88| 亚洲国产精品av| 亚洲一区二区三区美女| 美女精品自拍一二三四| 国产91精品欧美| 色综合久久66| 欧美一级一区二区| 国产精品久久久久四虎| 亚洲成人动漫av| 精品制服美女丁香| 91麻豆蜜桃一区二区三区| 7799精品视频| 亚洲国产高清在线观看视频| 亚洲一二三四在线观看| 捆绑调教一区二区三区| www.欧美色图| 欧美精品在线观看一区二区| 欧美激情综合五月色丁香小说| 亚洲午夜免费福利视频| 精品一区二区三区免费视频| 91农村精品一区二区在线| 日韩片之四级片| 亚洲精品国产第一综合99久久 | 视频在线观看91| 成人综合激情网| 日韩一级在线观看| 亚洲免费在线播放| 国产suv一区二区三区88区| 欧美日韩性生活| 亚洲色图制服诱惑 | 亚洲精选视频免费看| 老司机精品视频线观看86| 91国产精品成人| 国产日韩视频一区二区三区| 亚洲第一激情av| av中文字幕亚洲| 欧美精品一区二区三区蜜桃 | 亚洲三级在线播放| 极品少妇xxxx精品少妇偷拍| 欧美午夜片在线观看| 中文字幕精品一区 | 国产成人精品一区二区三区四区| 欧美视频第二页| 亚洲日穴在线视频| 国产成人午夜电影网| 日韩欧美一级特黄在线播放| 亚洲永久精品国产| 懂色一区二区三区免费观看| 日韩欧美黄色影院| 日本不卡一区二区三区高清视频| 欧美在线综合视频| 亚洲女人****多毛耸耸8| 成人福利视频网站| 久久久欧美精品sm网站| 精品在线播放午夜| 欧美成人精品二区三区99精品| 午夜影院久久久| 欧美午夜精品久久久久久孕妇| 亚洲欧洲精品天堂一级| 成人午夜看片网址| 国产日产欧美一区| 国产成人免费在线| 国产精品视频一二三| 国产精品996| 国产亚洲精品7777| 国产精品69久久久久水密桃| www一区二区| 国产福利一区二区三区视频| 久久久久久久久久美女| 国产成人av电影在线观看| 久久久精品中文字幕麻豆发布| 国产一区二区三区在线观看免费视频 | 久久久久久久久久久久久夜| 国产一区二区女| 欧美国产精品一区| 波多野结衣在线aⅴ中文字幕不卡| 欧美极品xxx| 色综合视频一区二区三区高清| 国产精品美女www爽爽爽| 97se亚洲国产综合自在线观| 中文字幕一区av| 在线精品视频小说1| 日韩精品一级二级| 日韩免费一区二区三区在线播放| 经典三级视频一区| 国产精品天美传媒| 欧美在线观看一区二区| 午夜精品久久久久久久| 日韩欧美久久一区| 国产成人在线免费| 日韩理论电影院| 欧美精品久久久久久久久老牛影院| 午夜精品123| 久久久精品国产免大香伊| av一二三不卡影片| 视频一区欧美精品| 久久婷婷色综合| 91亚洲资源网| 免费成人深夜小野草| 国产精品视频你懂的| 在线观看精品一区| 国内外精品视频| 亚洲精品乱码久久久久| 日韩色视频在线观看| 成人毛片视频在线观看|