标题：MSFlexGrid控件
概述
MSFlexGrid控件显示和操作表格数据。其对包含字符串和图片的表格提供了灵活的排序、插入数据和格式编排功能。当与Data控件绑定时，MSFlexGrid控件只显示只读数据。
你可以在MSFlexGrid中的任何单元放置文本、图片或这二者。Row和Col属性指定MSFlexGrid控件的当前单元。你可以在代码中指定当前单元，也可以在运行时使用鼠标或键盘改变当前单元。Text属性引用了当前单元中的文本。
如果单元中的文本太长以致不能在单元中一行显示，将WordWrap属性置为True将在单元中分多行显示文本。要在单元中显示多行文本，你需要增大单元的宽度（ColWidth属性）或行高度（RowHeight属性）。
使用Cols和Rows属性确定MSFlexGrid控件中的行数和列数。
属性
OLEDropMode属性（ActiveX控件），Height, Width属性（ActiveX控件），Index属性（ActiveX控件），Left, Top属性（ActiveX控件），Tag属性（ActiveX控件），Visible属性（ActiveX控件），Object属性（ActiveX控件），ColPos属性，ColPositon, RowPosition属性，Cols, Rows属性（MSHFlexGrid），ColSel,RowSel属性，ColWidth属性（MSHFlexGrid），FillStyle属性（MSHFlexGrid），FixedCols, FixedRows属性（MSHFlexGrid），FocusRect属性，FontWidth,FontWidthBand, FontWidthFixed, FontWidthHeader属性（MSHFlexGrid），ForeColor, ForeColorBand, ForeColorFixed, ForeColorHeader, ForeColorSel属性，FormatString属性，GridColor, GirdColorBand, GridColorFixed, GridColorHeader,GridColorIndent, GridColorUnpopulated属性，GridLines, GridLinesBand,GridLinesFixed, GridLinesHeader, GridLinesIndent, GridLineUnpopulated属性（MSHFlexGrid），GridLineWidth, GridLineWidthBand, GridLineWidthFixed,GridLineWidthHeader, GridLineWidthIndent, GridLineWidthUnpopulated属性（MSHFlexGrid），HighLight属性（MSHFlexGrid），LeftCol属性（MSHFlexGrid），MergeCells属性，MergeCol, MergeRow属性，MouseCol, MouseRow属性，Name属性（MSHFlexGrid），Picture属性（MSHFlexGrid），PictureType属性，Redraw属性，RowHeight属性（MSHFlexGrid），RowHeightMin属性，RowVisible属性，RowPos属性，ScrollBars属性（MSHFlexGrid），ScrollTrack属性，SelectionMode属性，Sort属性（MSHFlexGrid），Text属性（MSHFlexGrid），TextArray属性，TextMatrix属性，TextStyle, TextStyleBand, TextStyleFixed, TextStyleHeader属性（MSHFlexGrid），TopRow属性（MSHFlexGrid），Version属性（MSHFlexGrid），WordWrap属性（MSHFlexGrid），AllowBigSelection属性，AllowUserResizing属性，BackColor, BackColorBkg, BackColorFixed, BackColorSel属性，CellAlignment属性，CellBackColor, CellForeColor属性，CellFontBold属性，CellFontItalic属性，CellFontName属性，CellFontSize属性，CellFontStrikeThrough属性，CellFontUnderline属性，CellFontWidth属性，CellHeight, CellLeft, CellTop, CellWidth属性（MSHFlexGrid），CellPicture属性，CellPictureAlignment属性，CellTextStyle属性，Clip属性（MSHFlexGrid），Col,Row属性（MSHFlexGrid），ColAlignment, ColAlignmentBand, ColAlignmentHeader属性（MSHFlexGrid），ColData, RowData, BandData属性（MSHFlexGrid），ColIsVisible属性，DataBindings属性，TabIndex属性，DragIcon属性，DragMode属性，MouseIcon属性，TabStop属性，HelpContextID属性，Parent属性，Container属性，ToolTipText属性，WhatsThisHelp属性，Appearance属性（ActiveX控件），BorderStyle属性（ActiveX控件），Enabled属性（ActiveX控件），DataSource属性（ActiveX控件），hWnd属性（ActiveX控件），MousePointer属性（ActiveX控件）。
方法
OLEDrag方法（ActiveX控件），Refresh方法（ActiveX控件），RemoveItem方法（MSHFlexGrid），AddItem方法（MSHFlexGrid），Clear方法（MSHFlexGrid），SelFocus方法，Drag方法，Move方法，ZOrder方法，ShowWhatsThis方法。
事件
MSFlexGrid特有事件※注1：MSFlexGrid控件的特有事件全部是不带参数的，要注意与DataGrid控件的同名事件区分
※注2：执行顺序：LeaveCell → SelChange → EnterCell → RowColChange
◇ SelChange事件 (DISPID = 69)
Private Sub object_SelChange()
void OnSelChange(void);
◇ RowColChange事件 (DISPID = 70)
Private Sub object_RowColChange()
void OnRowColChange(void);
◇ EnterCell事件 (DISPID = 71)
Private Sub object_EnterCell()
void OnEnterCell(void);
◇ LeaveCell事件 (DISPID = 72)
Private Sub object_LeaveCell()
void OnLeaveCell(void);
◇ Scroll事件 (DISPID = 73)
Private Sub object_Scroll()
void OnScroll(void);
◇ Compare事件
Private Sub object_Compare(row1, row2, cmp)
void OnCompare(long nRow1, long nRow2, CMP_FUNC pFunc)ActiveX控件事件Click事件
DragDrop事件
DragOver事件
GotFocus事件
KeyDown / KeyUp事件
KeyPress事件
LostFocus事件
MouseDown / MouseUp事件
MouseMove事件
OLECompleteDrag事件
OLEDragDrop事件
OLEDragOver事件
OLEGiveFeedback事件
OLESetData事件
OLEStartDrag事件
属性常数
这一节包含关于 MSHFlexGrid 的控件常数的信息。注意这些常数也应用到 MSFlexGrid，除非有不同地注解。AddModeSettings 属性常数值描述flexNoAddNew0当前单元不在最后行中，并且没有 AddNew 操作处于待决。flexAddNewCurrent1当前单元在最后一行，但没有 AddNew 操作处于待决。flexAddNewPending2当前单元在倒数第二行。这是是通过 MSHFlexGrid 用户接口由用户初始化一个待决的 AddNew 操作的结果，或者是编程地设置一个列的 Value 或 Text 属性的结果。AllowUserResizing 属性常数值描述flexResizeNone0用户不能使用鼠标调整大小。这是缺省设置值。flexResizeColumns1用户可以使用鼠标调整列的大小。flexResizeRows2用户可以使用鼠标调整行的大小。flexResizeBoth3用户可以使用鼠标调整列和行的大小。Appearance 属性常数值描述flexFlat0MSHFlexGrid 的全部外观是平面的或正常的。flex3D1MSHFlexGrid 的全部外观是三维的。BorderStyle 属性常数值描述flexBorderNone0没有边框。flexBorderSingle1有一个单边框。CellAlignment 属性常数值描述flexAlignLeftTop0单元内容顶部左对齐。flexAlignLeftCenter1单元内容中间左对齐。对字符串的缺省设置值。flexAlignLeftBottom2单元内容底部左对齐。flexAlignCenterTop3单元内容顶部居中。flexAlignCenterCenter4单元内容中间居中。flexAlignCenterBottom5单元内容底部居中。flexAlignRightTop6单元内容顶部右对齐。flexAlignRightCenter7单元内容中间右对齐。对数字的缺省设置值。flexAlignRightBottom8单元内容底部右对齐。flexAlignGeneral9单元内容一般对齐方式。对字符串中间左对齐而对数值中间右对齐。CellPictureAlignment 属性常数值描述flexAlignLeftTop0图片顶部左对齐。flexAlignLeftCenter1图片中间左对齐。flexAlignLeftBottom2图片底部左对齐。flexAlignCenterTop3图片顶部居中。flexAlignCenterCenter4图片中间居中。flexAlignCenterBottom5图片底部居中。flexAlignRightTop6图片顶部右对齐。flexAlignRightCenter7图片中间右对齐。flexAlignRightBottom8图片底部右对齐。
CellTextStyle、TextStyle、TextStyleFixed 属性 
常数值描述flexTextFlat0文本为正常的、平面的文本。flexTextRaised1文本看起来凸起。flexTextInset2文本看起来凹入。flexTextRaisedLight3文本看起来轻微凸起。flexTextInsetLight4文本看起来轻微凹入。CellType 属性常数值描述flexCellTypeStandard0单元为标准单元flexCellTypeFixed1单元包含在一个固定行或列中。flexCellTypeHeader2单元是一个数据带区的标头单元。flexCellTypeIndent3单元用在缩进一个数据带区的一列中。flexCellTypeUnpopulated4单元是一个未充填的单元。ColAlignment 属性常数值描述flexAlignLeftTop0列内容顶部左对齐。flexAlignLeftCenter1列内容中间左对齐。对字符串的缺省设置值。flexAlignLeftBottom2列内容底部左对齐。flexAlignCenterTop3列内容顶部居中。flexAlignCenterCenter4列内容中间居中。flexAlignCenterBottom5列内容底部居中flexAlignRightTop6列内容顶部右对齐。flexAlignRightCenter7列内容中间右对齐。对数值的缺省设置值。flexAlignRightBottom8列内容底部右对齐。flexAlignGeneral9列内容一般对齐方式。对字符串中间左对齐而对数值中间右对齐。ColHeader 属性常数值描述flexColHeaderOn0为每一个带区显示标头。flexColHeaderOff1没有为带区显示标头。flexColHeaderOnce2为带区显示标头。如果带区被折叠，只显示一个标头。重复的标头不显示。DisplayBandSettings 属性常数值描述flexBandDisplayHorizontal0MSHFlexGrid 中的带区水平显示（横向）。缺省设置值。flexBandDisplayVertical1MSHFlexGrid 中的带区竖直显示（上下方向）。DisplayCellSettings 属性常数值描述FlexCellDisplayHorizontal0MSHFlexGrid 中的带区水平显示（横向）。flexCellDisplayVertical1MSHFlexGrid 中的带区竖直显示（上下方向）。FillStyle 属性常数值描述flexFillSingle0单个。更改 Text 或任何单元属性只影响活动单元。缺省设置值。flexFillRepeat1重复。更改 Text 或任何单元属性影响所有选定单元。FocusRect 属性常数值描述flexFocusNone0围绕当前单元没有焦点矩形。flexFocusLight1围绕当前单元有一个浅色的焦点矩形。缺省设置值。flexFocusHeavy2围绕当前单元有一个深色的焦点矩形。GridLines、GridLinesFixed 属性常数值描述flexGridNone0没有线。单元格之间没有线。在 MSFlexGrid 中，对 GridLines 这是缺省的设置值。flexGridFlat1有线。单元格之间线风格被设置为正常的、平面的线。在 MSHFlexGrid 中，对 GridLines 这是缺省的设置。flexGridInset2凹入线。单元格之间线的风格被设置为凹入线。在 MSFlexGrid 中，对 GridLinesFixed 这是缺省的设置值。flexGridRaised3凸起线。单元格之间的线风格被设置为凸起线。在 MSHFlexGrid 中，对 GridLinesFixed 这是缺省的设置值。HighLight 属性常数值描述flexHighlightNever0选定单元无突出显示。flexHighlightAlways1选定单元总是突出显示。这是缺省设置值。flexHighlightWithFocus2突出显示只在控件有焦点时才显现。MergeCells 属性常数值描述flexMergeNever0不显示。包含相同内容的单元不分组。这是缺省设置值。flexMergeFree1自由。包含相同内容的单元总是合并。flexMergeRestrictRows2限制行。只有行中包含相同内容的相邻单元（向左）合并。flexMergeRestrict-Columns3限制列。只有列中包含相同内容的相邻单元（向上）合并。flexMergeRestrictBoth4限制行和列。只有在行中（向左）或在列中（向上）包含相同内容的相邻的单元合并。MousePointer 属性常数值描述flexDefault0MSHFlexGrid 的轮廓。flexArrow1一个箭头指针。flexCross2一组十字型指针。flexIBeam3一个 "I" 型标指针，来允许文本输入。flexIcon4一个正方形中的方块。flexSize5一个用箭头指向上方、下方、左方或右方调整大小指针。flexSizeNESW6一个用箭头指向右上方和左下方调整大小指针。flexSizeNS7一个用箭头指向上方和下方调整大小指针。flexSizeNWSE8一个用箭头指向左上方和右下方调整大小指针。flexSizeEW9一个用箭头指向左方和右方调整大小指针。flexUpArrow10一个指向上方的箭头。flexHourGlass11一个沙漏符号。flexNoDrop12一个“不允许放下”指针。flexCustom13一个自定义风格指针。PictureType 属性常数值描述flexPictureColor0产生一个高品质的全色图象。flexPictureMonochrome1产生一个较低品质、单色，占用较少内存的图象。RowSizingSettings 属性常数值描述flexRowSizeIndividual0调整一个行的大小只更改调整的行的高度。这是缺省设置值。flexRowSizeAll1调整一个行的大小更改 MSHFlexGrid 中的所有行的高度。SelectionMode 属性常数值描述flexSelectionFree0自由。允许选定 MSHFlexGrid 中的个别单元，电子数据表风格。（缺省设置值）flexSelectionByRow1按行。强制跨越整个行选择，如在一个多列列表框或基于记录的显示。flexSelectionByColumn2按列。强制跨越整个列选择，如同为一个图表选择范围或为排序选择字段。ScrollBars 属性常数值描述flexScrollNone0MSHFlexGrid 没有滚动条。flexScrollHorizontal1MSHFlexGrid 有一个水平的滚动条。flexScrollVertical2MSHFlexGrid 有一个竖直的滚动条。flexScrollBoth3MSHFlexGrid 有水平和竖直的滚动条。这是缺省设置值。Sort 属性常数值描述flexSortNone0无。不执行排序。flexSortGenericAscending1一般升序。执行估计文本不管是字符串或者是数值的升序排序。flexSortGenericDescending2一般降序。执行估计文本不管是字符串或者是数值的降序排序。flexSortNumericAscending3数值升序。执行把字符串变换为数值的升序排序。flexSortNumericDescending4数值降序。执行把字符串变换为数值的降序排序。flexSortStringNoCaseAsending5字符串升序。执行不区分大小写字符串比较的升序排序。flexSortNoCaseDescending6字符串降序。执行不区分大小写字符串比较的降序排序。flexSortStringAscending7字符串升序。执行区分大小写字符串比较的升序排序。flexSortStringDescending8字符串降序。执行区分大小写字符串比较的降序排序。flexSortCustom9自定义，使用 Compare 事件比较行。