📄 vsflexgrid.h
字号:
/*------------------------------------------------------------------------------*
* File Name: vsFlexGrid.h *
* Creation: CPY 1/12/2003 *
* Purpose: Origin C header file for the vsFlexGrid ActiveX control *
* Copyright (c) OriginLab Corp. 2003 - 2007 *
* All Rights Reserved *
* *
* Modification Log: *
*------------------------------------------------------------------------------*/
#ifndef _VSFLEXGRID_H
#define _VSFLEXGRID_H
//***************************************************
//
//
// vsFlex Consts from vsflex8l.tlh
//
//
//***************************************************
enum TextStyleSettings
{
flexTextFlat = 0,
flexTextRaised = 1,
flexTextInset = 2,
flexTextRaisedLight = 3,
flexTextInsetLight = 4
};
enum FocusRectSettings
{
flexFocusNone = 0,
flexFocusLight = 1,
flexFocusHeavy = 2,
flexFocusSolid = 3,
flexFocusRaised = 4,
flexFocusInset = 5
};
enum ShowSelSettings
{
flexHighlightNever = 0,
flexHighlightAlways = 1,
flexHighlightWithFocus = 2
};
enum RedrawSettings
{
flexRDNone = 0,
flexRDDirect = 1,
flexRDBuffered = 2
};
enum ScrollBarsSettings
{
flexScrollBarNone = 0,
flexScrollBarHorizontal = 1,
flexScrollBarVertical = 2,
flexScrollBarBoth = 3
};
enum FillStyleSettings
{
flexFillSingle = 0,
flexFillRepeat = 1
};
enum GridStyleSettings
{
flexGridNone = 0,
flexGridFlat = 1,
flexGridInset = 2,
flexGridRaised = 3,
flexGridFlatHorz = 4,
flexGridInsetHorz = 5,
flexGridRaisedHorz = 6,
flexGridSkipHorz = 7,
flexGridFlatVert = 8,
flexGridInsetVert = 9,
flexGridRaisedVert = 10,
flexGridSkipVert = 11,
flexGridExplorer = 12,
flexGridExcel = 13,
flexGridDataGrid = 14
};
enum AlignmentSettings
{
flexAlignLeftTop = 0,
flexAlignLeftCenter = 1,
flexAlignLeftBottom = 2,
flexAlignCenterTop = 3,
flexAlignCenterCenter = 4,
flexAlignCenterBottom = 5,
flexAlignRightTop = 6,
flexAlignRightCenter = 7,
flexAlignRightBottom = 8,
flexAlignGeneral = 9
};
enum PictureAlignmentSettings
{
flexPicAlignLeftTop = 0,
flexPicAlignLeftCenter = 1,
flexPicAlignLeftBottom = 2,
flexPicAlignCenterTop = 3,
flexPicAlignCenterCenter = 4,
flexPicAlignCenterBottom = 5,
flexPicAlignRightTop = 6,
flexPicAlignRightCenter = 7,
flexPicAlignRightBottom = 8,
flexPicAlignStretch = 9,
flexPicAlignTile = 10
};
enum SortSettings
{
flexSortNone = 0,
flexSortGenericAscending = 1,
flexSortGenericDescending = 2,
flexSortNumericAscending = 3,
flexSortNumericDescending = 4,
flexSortStringNoCaseAscending = 5,
flexSortStringNoCaseDescending = 6,
flexSortStringAscending = 7,
flexSortStringDescending = 8,
flexSortCustom = 9,
flexSortUseColSort = 10
};
enum SelModeSettings
{
flexSelectionFree = 0,
flexSelectionByRow = 1,
flexSelectionByColumn = 2,
flexSelectionListBox = 3
};
enum MergeSettings
{
flexMergeNever = 0,
flexMergeFree = 1,
flexMergeRestrictRows = 2,
flexMergeRestrictColumns = 3,
flexMergeRestrictAll = 4,
flexMergeFixedOnly = 5,
flexMergeSpill = 6,
flexMergeOutline = 7
};
enum PictureTypeSettings
{
flexPictureColor = 0,
flexPictureMonochrome = 1
};
enum AllowUserResizeSettings
{
flexResizeNone = 0,
flexResizeColumns = 1,
flexResizeRows = 2,
flexResizeBoth = 3,
flexResizeBothUniform = 4
};
enum MousePointerSettings
{
flexDefault = 0,
flexArrow = 1,
flexCross = 2,
flexIBeam = 3,
flexIcon = 4,
flexSize = 5,
flexSizeNESW = 6,
flexSizeNS = 7,
flexSizeNWSE = 8,
flexSizeEW = 9,
flexUpArrow = 10,
flexHourglass = 11,
flexNoDrop = 12,
flexArrowHourGlass = 13,
flexArrowQuestion = 14,
flexSizeAll = 15,
flexPointerCopy = 50,
flexPointerMove = 51,
flexSizeHorz = 52,
flexSizeVert = 53,
flexHand = 54,
flexCustom = 99
};
enum EditableSettings
{
flexEDNone = 0,
flexEDKbd = 1,
flexEDKbdMouse = 2
};
enum SubtotalPositionSettings
{
flexSTBelow = 0,
flexSTAbove = 1
};
enum BorderStyleSettings
{
flexBorderNone = 0,
flexBorderFlat = 1
};
enum AppearanceSettings
{
flexFlat = 0,
flex3D = 1,
flex3DLight = 2
};
enum OutlineBarSettings
{
flexOutlineBarNone = 0,
flexOutlineBarComplete = 1,
flexOutlineBarSimple = 2,
flexOutlineBarSymbols = 3,
flexOutlineBarCompleteLeaf = 4,
flexOutlineBarSimpleLeaf = 5,
flexOutlineBarSymbolsLeaf = 6
};
enum AutoSizeSettings
{
flexAutoSizeColWidth = 0,
flexAutoSizeRowHeight = 1
};
enum OwnerDrawSettings
{
flexODNone = 0,
flexODOver = 1,
flexODContent = 2,
flexODComplete = 3,
flexODOverFixed = 4,
flexODContentFixed = 5,
flexODCompleteFixed = 6
};
enum DataModeSettings
{
flexDMFree = 0,
flexDMBound = 1,
flexDMBoundBatch = 2,
flexDMBoundImmediate = 3,
flexDMBoundNoRowCount = 4
};
enum OLEDragModeSettings
{
flexOLEDragManual = 0,
flexOLEDragAutomatic = 1
};
enum OLEDropModeSettings
{
flexOLEDropNone = 0,
flexOLEDropManual = 1,
flexOLEDropAutomatic = 2
};
enum TabBehaviorSettings
{
flexTabControls = 0,
flexTabCells = 1
};
enum CellCheckedSettings
{
flexNoCheckbox = 0,
flexChecked = 1,
flexUnchecked = 2,
flexTSChecked = 3,
flexTSUnchecked = 4,
flexTSGrayed = 5
};
enum MergeCompareSettings
{
flexMCExact = 0,
flexMCNoCase = 1,
flexMCTrimNoCase = 2
};
enum EllipsisSettings
{
flexNoEllipsis = 0,
flexEllipsisEnd = 1,
flexEllipsisPath = 2
};
enum AutoSearchSettings
{
flexSearchNone = 0,
flexSearchFromTop = 1,
flexSearchFromCursor = 2
};
enum ExplorerBarSettings
{
flexExNone = 0,
flexExSort = 1,
flexExMove = 2,
flexExSortAndMove = 3,
flexExSortShow = 5,
flexExSortShowAndMove = 7,
flexExMoveRows = 8
};
enum SubtotalSettings
{
flexSTNone = 0,
flexSTClear = 1,
flexSTSum = 2,
flexSTPercent = 3,
flexSTCount = 4,
flexSTAverage = 5,
flexSTMax = 6,
flexSTMin = 7,
flexSTStd = 8,
flexSTVar = 9,
flexSTStdPop = 10,
flexSTVarPop = 11
};
enum CollapsedSettings
{
flexOutlineExpanded = 0,
flexOutlineSubtotals = 1,
flexOutlineCollapsed = 2
};
enum SaveLoadSettings
{
flexFileAll = 0,
flexFileData = 1,
flexFileFormat = 2,
flexFileCommaText = 3,
flexFileTabText = 4,
flexFileCustomText = 5,
flexFileExcel = 6
};
enum ArchiveSettings
{
arcAdd = 0,
arcStore = 1,
arcExtract = 2,
arcDelete = 3
};
enum ArchiveInfoSettings
{
arcFileCount = 0,
ArcFileName = 1,
arcFileSize = 2,
arcFileCompressedSize = 3,
arcFileDate = 4
};
enum DataTypeSettings
{
flexDTEmpty = 0,
flexDTNull = 1,
flexDTShort = 2,
flexDTLong = 3,
flexDTSingle = 4,
flexDTDouble = 5,
flexDTCurrency = 6,
flexDTDate = 7,
flexDTString = 8,
flexDTDispatch = 9,
flexDTError = 10,
flexDTBoolean = 11,
flexDTVariant = 12,
flexDTUnknown = 13,
flexDTDecimal = 14,
flexDTLong8 = 20,
flexDTStringC = 30,
flexDTStringW = 31
};
enum CellPropertySettings
{
flexcpText = 0,
flexcpTextStyle = 1,
flexcpAlignment = 2,
flexcpPicture = 3,
flexcpPictureAlignment = 4,
flexcpChecked = 5,
flexcpBackColor = 6,
flexcpForeColor = 7,
flexcpFloodPercent = 8,
flexcpFloodColor = 9,
flexcpFont = 10,
flexcpFontName = 11,
flexcpFontSize = 12,
flexcpFontBold = 13,
flexcpFontItalic = 14,
flexcpFontUnderline = 15,
flexcpFontStrikethru = 16,
flexcpFontWidth = 17,
flexcpValue = 18,
flexcpTextDisplay = 19,
flexcpData = 20,
flexcpCustomFormat = 21,
flexcpLeft = 22,
flexcpTop = 23,
flexcpWidth = 24,
flexcpHeight = 25,
flexcpVariantValue = 26,
flexcpRefresh = 27,
flexcpSort = 28
};
enum RowStatusSettings
{
flexrsNew = 0,
flexrsUpdated = 1,
flexrsModified = 2,
flexrsDeleted = 3
};
enum ShowButtonSettings
{
flexSBEditing = 0,
flexSBFocus = 1,
flexSBAlways = 2
};
enum ComboSearchSettings
{
flexCmbSearchNone = 0,
flexCmbSearchLists = 1,
flexCmbSearchCombos = 2,
flexCmbSearchAll = 3
};
enum AllowUserFreezeSettings
{
flexFreezeNone = 0,
flexFreezeColumns = 1,
flexFreezeRows = 2,
flexFreezeBoth = 3
};
#ifndef VTS_NONE
#define VTS_NONE
#endif
//**************************************************************
//
//
// vsFlex events and handling macros, suitable only for Origin C
//
//
//**************************************************************
// prototype as:
// static void OnBeforeEdit(Control cntrl, int nRow, int nCol, BOOL* pCancel)
#define ON_GRID_BEFORE_EDIT(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(21, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_PBOOL)
// static void OnStartEdit(Control cntrl, int nRow, int nCol, BOOL* pCancel)
#define ON_GRID_START_EDIT(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(22, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_PBOOL)
// static void OnCellButtonClick(Control cntrl, int nRow, int nCol)
#define ON_GRID_BUTTON_CLICK(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(34, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4)
// nButton = MK_LBUTTON etc
// nShift = 1 if shift, 0 if not
// static void OnBeforeMouseDown(Control cntrl, short nButton, short nShift, float X, float Y, BOOL* pCancel)
#define ON_GRID_BEFORE_MOUSE_DOWN(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(5, _idCntl, _ocFunc, VTS_CTRL VTS_I2 VTS_I2 VTS_R4 VTS_R4 VTS_PBOOL)
// static void OnMouseMove(Control cntrl, short nButton, short nShift, float X, float Y)
#define ON_GRID_MOUSE_MOVE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(-606, _idCntl, _ocFunc, VTS_CTRL VTS_I2 VTS_I2 VTS_R4 VTS_R4)
// static void OnRowColChange(Control cntrl)
#define ON_GRID_ROW_COL_CHANGE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(2, _idCntl, _ocFunc, VTS_CTRL VTS_NONE)
// static void OnValidateEdit(Control cntrl, int nRow, int nCol, BOOL* pCancel)
#define ON_GRID_VALIDATE_EDIT(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(23, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_PBOOL)
// static void OnSelChange(Control cntrl)
#define ON_GRID_SEL_CHANGE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(1, _idCntl, _ocFunc, VTS_CTRL)
// static void OnAfterSelChange(Control cntrl int nOldRowSel, int nOldColSel, int nNewRowSel, int nNewColSel)
#define ON_GRID_AFTER_SEL_CHANGE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(9, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_I4 VTS_I4)
//static void OnAfterCollapse(Control cntrl, int nRow, short nState)
#define ON_GRID_AFTER_COLLAPSE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(20, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I2)
// static void OnAfterEdit(Control cntrl, int nRow, int nCol)
#define ON_GRID_AFTER_EDIT(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(24, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4)
// static void OnChangeEdit(Control cntrl)
#define ON_GRID_CHANGE_EDIT(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(28, _idCntl, _ocFunc, VTS_CTRL)
//static void OnDrawCell(Control cntrl, UINT hDC, int nRow, int nCol, int nLeft, int nTop, int nRight, int nBottom, BOOL* pDone)
#define ON_GRID_DRAW_CELL(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(32, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_PBOOL)
// static void OnCellChange(Control cntrl, int Row, int Col)
#define ON_GRID_CELL_CHANGE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(43, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4)
// static void OnComboDropDown(Control cntrl, int nRow, int nCol)
#define ON_GRID_COMBO_DROPDOWN(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(49, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4)
// static void OnComboCloseUp(Control cntrl, int nRow, int nCol, BOOL* pFinishEdit)
#define ON_GRID_COMBO_CLOSEUP(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(50, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_PBOOL)
// static void OnBeforeUserResize(Control cntrl, int nRow, int nCol, BOOL *pCancel)
#define ON_GRID_BEFORE_USER_RESIZE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(17, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4 VTS_PBOOL)
// static void OnAfterUserResize(Control cntrl, int nRow, int nCol)
#define ON_GRID_AFTER_USER_RESIZE(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(18, _idCntl, _ocFunc, VTS_CTRL VTS_I4 VTS_I4)
// static void OnEnterCell(Control cntrl)
#define ON_GRID_ENTER_CELL(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(3, _idCntl, _ocFunc, VTS_CTRL VTS_NONE)
// static void OnClick(Control cntrl)
#define ON_GRID_CLICK(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(-600, _idCntl, _ocFunc, VTS_CTRL VTS_NONE)
// static void OnDblClick(Control cntrl)
#define ON_GRID_DBLCLICK(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(-601, _idCntl, _ocFunc, VTS_CTRL VTS_NONE)
#define ON_GRID_START_DRAG(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(37, _idCntl, _ocFunc, VTS_CTRL VTS_PDISPATCH VTS_PI4)
#define ON_GRID_DRAG_OVER(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(41, _idCntl, _ocFunc, VTS_CTRL VTS_PDISPATCH VTS_PI4 VTS_I2 VTS_I2 VTS_R4 VTS_R4 VTS_PI2)
#define ON_GRID_DRAG_DROP(_idCntl, _ocFunc) ON_ACTIVEX_EVENT(42, _idCntl, _ocFunc, VTS_CTRL VTS_PDISPATCH VTS_PI4 VTS_I2 VTS_I2 VTS_R4 VTS_R4)
#endif //_VSFLEXGRID_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -