basegrid.hpp
来自「TMSPack基本上涵盖了Delphi所有的基础控件」· HPP 代码 · 共 369 行 · 第 1/2 页
HPP
369 行
// Borland C++ Builder
// Copyright (c) 1995, 2005 by Borland Software Corporation
// All rights reserved
// (DO NOT EDIT: machine generated header) 'Basegrid.pas' rev: 10.00
#ifndef BasegridHPP
#define BasegridHPP
#pragma delphiheader begin
#pragma option push
#pragma option -w- // All warnings off
#pragma option -Vx // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp> // Pascal unit
#include <Sysinit.hpp> // Pascal unit
#include <Windows.hpp> // Pascal unit
#include <Messages.hpp> // Pascal unit
#include <Sysutils.hpp> // Pascal unit
#include <Classes.hpp> // Pascal unit
#include <Graphics.hpp> // Pascal unit
#include <Controls.hpp> // Pascal unit
#include <Forms.hpp> // Pascal unit
#include <Dialogs.hpp> // Pascal unit
#include <Grids.hpp> // Pascal unit
#include <Advutil.hpp> // Pascal unit
#include <Advobj.hpp> // Pascal unit
//-- user supplied -----------------------------------------------------------
namespace Basegrid
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TVAlignment { vtaTop, vtaCenter, vtaBottom };
#pragma option pop
#pragma option push -b-
enum TCellGradientDirection { GradientVertical, GradientHorizontal };
#pragma option pop
#pragma option push -b-
enum TColumnCalcType { acNONE, acSUM, acAVG, acCOUNT, acMIN, acMAX, acSPREAD, acCUSTOM };
#pragma option pop
#pragma option push -b-
enum TEditorType { edNormal, edSpinEdit, edComboEdit, edComboList, edEditBtn, edCheckBox, edDateEdit, edDateEditUpDown, edTimeEdit, edButton, edDataCheckBox, edNumeric, edPositiveNumeric, edFloat, edCapital, edMixedCase, edPassword, edUnitEditBtn, edLowerCase, edUpperCase, edFloatSpinEdit, edTimeSpinEdit, edDateSpinEdit, edNumericEditBtn, edFloatEditBtn, edCustom, edRichEdit, edNone, edUniEdit, edUniComboEdit, edUniComboList, edUniEditBtn, edUniMemo, edDateTimeEdit };
#pragma option pop
class DELPHICLASS TCellProperties;
class DELPHICLASS TBaseGrid;
typedef void __fastcall (__closure *TGetDisplTextEvent)(System::TObject* Sender, int ACol, int ARow, AnsiString &Value);
typedef void __fastcall (__closure *TGetDisplWideTextEvent)(System::TObject* Sender, int ACol, int ARow, WideString &Value);
class DELPHICLASS TAdvGridUndoRedo;
class DELPHICLASS TUndoRedoCollection;
class PASCALIMPLEMENTATION TUndoRedoCollection : public Classes::TCollection
{
typedef Classes::TCollection inherited;
public:
__fastcall TUndoRedoCollection(void);
public:
#pragma option push -w-inl
/* TCollection.Destroy */ inline __fastcall virtual ~TUndoRedoCollection(void) { }
#pragma option pop
};
typedef void __fastcall (__closure *TAdvGridUndoRedoEvent)(System::TObject* Sender, TBaseGrid* Grid, int Col, int Row, AnsiString OrigValue, AnsiString NewValue);
class PASCALIMPLEMENTATION TAdvGridUndoRedo : public Classes::TComponent
{
typedef Classes::TComponent inherited;
private:
TUndoRedoCollection* FItems;
TBaseGrid* FGrid;
int FLevel;
int FMaxLevel;
TAdvGridUndoRedoEvent FOnUndo;
TAdvGridUndoRedoEvent FOnRedo;
protected:
virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation AOperation);
public:
__fastcall virtual TAdvGridUndoRedo(Classes::TComponent* AOwner);
__fastcall virtual ~TAdvGridUndoRedo(void);
virtual void __fastcall RegisterChange(int ACol, int ARow, AnsiString OldValue, AnsiString NewValue);
virtual void __fastcall StartSequence(void);
virtual void __fastcall StopSequence(void);
__property int Level = {read=FLevel, write=FLevel, nodefault};
__property TUndoRedoCollection* Items = {read=FItems, write=FItems};
__property TBaseGrid* Grid = {read=FGrid, write=FGrid};
void __fastcall Undo(void);
void __fastcall Redo(void);
void __fastcall Reset(void);
bool __fastcall CanUndo(void);
bool __fastcall CanRedo(void);
__published:
__property int MaxLevel = {read=FMaxLevel, write=FMaxLevel, nodefault};
__property TAdvGridUndoRedoEvent OnUndo = {read=FOnUndo, write=FOnUndo};
__property TAdvGridUndoRedoEvent OnRedo = {read=FOnRedo, write=FOnRedo};
};
class PASCALIMPLEMENTATION TBaseGrid : public Grids::TStringGrid
{
typedef Grids::TStringGrid inherited;
private:
bool FDefaultDrawing;
int FGridLineWidth;
Graphics::TColor FGridLineColor;
Graphics::TColor FGridFixedLineColor;
int FPaintID;
bool FCustomSelect;
TGetDisplTextEvent FOnGetDisplText;
TGetDisplWideTextEvent FOnGetDisplWideText;
bool FHideLastRow;
int FNormalRowCount;
TAdvGridUndoRedo* FUndoRedo;
bool FWordWrap;
bool FActiveRowShow;
Graphics::TColor FActiveRowColor;
bool __fastcall GetDefaultDrawing(void);
void __fastcall SetDefaultDrawing(const bool Value);
int __fastcall GetGridLineWidth(void);
HIDESBASE void __fastcall SetGridLineWidth(const int Value);
void __fastcall SetGridLineColor(const Graphics::TColor Value);
void __fastcall SetGridFixedLineColor(const Graphics::TColor Value);
void __fastcall SetObjectEx(int c, int r, const System::TObject* Value);
System::TObject* __fastcall GetObjectEx(int c, int r);
AnsiString __fastcall GetCellEx(int c, int r);
void __fastcall SetCellEx(int c, int r, const AnsiString Value);
System::TObject* __fastcall GetGraphicObjectEx(int c, int r);
void __fastcall SetGraphicObjectEx(int c, int r, const System::TObject* Value);
void __fastcall RepaintFixedMergedCols(void);
void __fastcall RepaintFixedMergedRows(void);
System::TObject* __fastcall GetGridObject(int c, int r);
void __fastcall SetGridObject(int c, int r, const System::TObject* Value);
AnsiString __fastcall GetGridCell(int c, int r);
void __fastcall SetGridCell(int c, int r, const AnsiString Value);
void __fastcall SetUndoRedo(const TAdvGridUndoRedo* Value);
void __fastcall SetActiveRowColor(const Graphics::TColor Value);
protected:
bool FShowSelection;
bool FHasCellProps;
System::TObject* __fastcall GetCPGraphicObject(TCellProperties* cp);
void __fastcall CopyRows(int ARow1, int ARow2);
void __fastcall CopyCols(int ACol1, int ACol2);
void __fastcall NilRow(int ARow);
void __fastcall NilCol(int ACol);
void __fastcall NilCell(int ACol, int ARow);
void __fastcall SelectBaseCell(void);
virtual bool __fastcall IsFixed(int ACol, int ARow);
bool __fastcall IsSelected(int ACol, int ARow);
virtual int __fastcall NodeIndent(int ARow);
virtual bool __fastcall HasNodes(void);
int __fastcall FixedColsWidth(void);
int __fastcall FixedRowsHeight(void);
DYNAMIC void __fastcall TopLeftChanged(void);
virtual void __fastcall DrawCell(int ACol, int ARow, const Types::TRect &ARect, Grids::TGridDrawState AState);
virtual void __fastcall DrawGridCell(Graphics::TCanvas* Canvas, int ACol, int ARow, const Types::TRect &ARect, Grids::TGridDrawState AState);
bool __fastcall HasCellProperties(int ACol, int ARow);
void __fastcall ClearProps(void);
void __fastcall ClearPropCell(int ACol, int ARow);
void __fastcall ClearPropRow(int ARow);
void __fastcall ClearPropRect(int ACol1, int ARow1, int ACol2, int ARow2);
virtual bool __fastcall SelectCell(int ACol, int ARow);
DYNAMIC void __fastcall KeyDown(Word &Key, Classes::TShiftState Shift);
DYNAMIC bool __fastcall DoMouseWheelDown(Classes::TShiftState Shift, const Types::TPoint &MousePos);
DYNAMIC bool __fastcall DoMouseWheelUp(Classes::TShiftState Shift, const Types::TPoint &MousePos);
virtual void __fastcall Paint(void);
virtual void __fastcall FloatFooterUpdate(void);
DYNAMIC void __fastcall SetEditText(int ACol, int ARow, const AnsiString Value);
DYNAMIC AnsiString __fastcall GetEditText(int ACol, int ARow);
bool __fastcall IsBaseCellEx(int ACol, int ARow, int &MCol, int &MRow);
Types::TRect __fastcall GetCellRect(int c, int r);
__property int PaintID = {read=FPaintID, nodefault};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?