(完整版)MSFlexGrid控件属性及使用方法整理

合集下载

MsFlexGrid 的使用方法

MsFlexGrid 的使用方法

MSFlexGrid控件概述1、作用:该控件以表格形式显示二维字符数组中每个单元的数据。

常用于处理复杂的二维数据表的问题。

如校历表、学生宿舍表、学生班级成绩表等。

2、添加到控件箱菜单命令:工程 | 部件,在部件对话框中选择:Microsoft FlexGrid Control 6.0 (SP6)。

3、主要属性(1)Rows与Cols属性:分别用于设置或返回MSFlexGrid控件的行数与列数。

(2)Row与Col属性:分别用于设置或返回MSFlexGrid控件中活动单元的行号与列号。

(3)TextMatrix属性:该属性用于表示MSFlexGrid控件中单元格的内容。

格式为:TextMatrix (Row, Col);其中Row与Col分别表示单元格在MSFlexGrid控件中的行号与列号。

(4)FixedRows属性:用于设置表格显示过程中固定不变的行数。

如FixedRows=1,则表示固定行为1,如图8.3中第1行。

(5)FixedCols属性:用于设置表格中固定不变的列数。

如FixedCols=1,则表示固定列为1,如图8.3中第1列。

(6)FixedColor属性:用于设置固定行与固定列的颜色。

(7)MouseRow与MouseCol属性:用于返回鼠标光标所在单元格的行号与列号。

(8) ColWidth(Col)、RowHigh(Row)属性:用于设置与返回第Col列的宽度与第Row 行的高度,例如设置第0列的宽度为1500,第0行的高度为300的赋值语句为:ColWidth(0) = 1500RowHeight(0) = 300(9)DataSource属性:用于选择数据表,只能通过Data数据源控件选择数据表。

说明,若要用ADO Data控件作为数据源,则应使用MSHFlexGrid控件。

(10)MousePointer属性:用于设置鼠标光标形状,属性取值与光标形状如表8.1所示。

【例8.1】编写程序,定义MSFlexGrid1控件为10行、5列表格,给每一个单元格赋值为Row+Col,其中Row与Col分别表示控件单元格的行号与列号。

关于vc的mshflexgrid控件的用法

关于vc的mshflexgrid控件的用法

关于vc的mshflexgrid控件的用法这一节包含关于MSHFlexGrid 的控件常数的信息。

注意这些常数也应用到MSFlexGrid,除非有不同地注解。

AddModeSettings 属性(MSHFlexGrid)常数值描述flexNoAddNew 0 当前单元不在最后行中,并且没有AddNew 操作处于待决。

flexAddNewCurrent 1 当前单元在最后一行,但没有AddNew 操作处于待决。

flexAddNewPending 2 当前单元在倒数第二行。

这是是通过MSHFlexGrid 用户接口由用户初始化一个待决的AddNew 操作的结果,或者是编程地设置一个列的Value 或Text 属性的结果。

AllowUserResizing 属性常数值描述flexResizeNone 0 用户不能使用鼠标调整大小。

这是缺省设置值。

flexResizeColumns 1 用户可以使用鼠标调整列的大小。

flexResizeRows 2 用户可以使用鼠标调整行的大小。

flexResizeBoth 3 用户可以使用鼠标调整列和行的大小。

Appearance 属性常数值描述flexFlat 0 MSHFlexGrid 的全部外观是平面的或正常的。

flex3D 1 MSHFlexGrid 的全部外观是三维的。

BorderStyle 属性常数值描述flexBorderNone 0 没有边框。

flexBorderSingle 1 有一个单边框。

CellAlignment 属性常数值描述flexAlignLeftTop 0 单元内容顶部左对齐。

flexAlignLeftCenter 1 单元内容中间左对齐。

对字符串的缺省设置值。

flexAlignLeftBottom 2 单元内容底部左对齐。

flexAlignCenterTop 3 单元内容顶部居中。

flexAlignCenterCenter 4 单元内容中间居中。

MSFlexGrid表格控件详细说明

MSFlexGrid表格控件详细说明

MSFlexGrid 表格控件详细说明控件名:Microsoft FlexGrid Control文件:sys\msflxgrd.ocx============================= 属性=========================================■AllowBigSelection 属性在行头或者列头上单击时,(是否)可以使得整个行或者列都被选中。

■AllowUserResizing 属性 (是否)可以用鼠标来对 MSFlexGrid 控件中行和列的大小进行重新调整。

-------------------------------------■Appearance 属性设计时的绘图风格■BorderStyle 属性边框样式-------------------------------------■BackColorBkg 属性 '表格多余部分颜色■BackColorFixed 属性 '表格头部分颜色■BackColorSel属性 '选中部分颜色■BackColor属性 '所有未确定单元的颜色■CellBackColor 和 CellForeColor 属性返回或设置单个单元或者一群单元的背景和前景颜色。

-------------------------------------■ForeColor、ForeColorFixed 以及 ForeColorSel 属性各部分上文本的颜色。

■TextStyle 和 TextStyleFixed[= style ] 属性返回或设置指定单元或者一群单元上文本的三维样式。

----------------------------------------■FixedAlignment (index)= [value] 属性列号,设置值flexAlignLeftTop 0 左顶部flexAlignLeftCenter 1 左中flexAlignLeftBottom 2 左底部flexAlignCenterTop 3 中顶部flexAlignCenterCenter 4 中中flexAlignCenterBottom 5 中底部flexAlignRightTop 6 右顶部flexAlignRightCenter 7 右中flexAlignRightBottom 8 右底部■ColAlignment(number) 属性 [= value ] 返回或设置某一列中数据的对齐方式number=列号,或者 -1(一次性地对所有列进行设置)。

MSFlexGrid控件

MSFlexGrid控件

MSFlexGrid控件MSFlexGrid控件显示和操作表格数据。

其对包含字符串和图片的表格提供了灵活的排序、插入数据和格式编排功能。

当与Data控件绑定时,MSFlexGrid控件只显示只读数据。

你可以在MSFlexGrid中的任何单元放置文本、图片或这二者。

Row和Col属性指定MSFlexGrid控件的当前单元。

你可以在代码中指定当前单元,也可以在运行时使用鼠标或键盘改变当前单元。

Text属性引用了当前单元中的文本。

如果单元中的文本太长以致不能在单元中一行显示,将WordWrap属性置为True将在单元中分多行显示文本。

要在单元中显示多行文本,你需要增大单元的宽度(ColWidth属性)或行高度(RowHeight属性)。

使用Cols和Rows属性确定MSFlexGrid控件中的行数和列数。

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控件事件。

wincc msflexgrid控件的用法

wincc msflexgrid控件的用法

wincc msflexgrid控件的用法在Siemens WinCC 中,`MSFlexGrid` 控件通常被称为"Grid" 或"FlexGrid" 控件,用于在界面上显示和编辑表格数据。

以下是一些基本的`MSFlexGrid` 控件的用法示例:1. 在窗体上添加MSFlexGrid 控件:-打开WinCC 项目。

-在画面设计器中,找到"FlexGrid" 或"Grid" 控件。

-将控件拖放到你想要显示表格的位置。

2. 设置MSFlexGrid 的属性:-双击`MSFlexGrid` 控件,打开属性窗口。

-在属性窗口中,你可以设置行数、列数、列标题、单元格格式等。

3. 通过代码设置和读取数据:-在WinCC 的VBScript 或ANSI C 脚本中,你可以使用代码操纵`MSFlexGrid` 控件。

-设置单元格的值:```vbMSFlexGrid1.TextMatrix(1, 1) = "Hello"```-读取单元格的值:```vbDim cellValuecellValue = MSFlexGrid1.TextMatrix(1, 1)```4. 处理事件:- `MSFlexGrid` 控件支持一些事件,你可以在脚本中处理这些事件。

例如,点击单元格的事件:```vbSub MSFlexGrid1_Click()MsgBox "Cell Clicked!"End Sub```5. 设置单元格格式:-你可以通过代码设置单元格的格式,如字体、颜色等。

```vbMSFlexGrid1.Col = 1MSFlexGrid1.Row = 1MSFlexGrid1.CellBackColor = RGB(255, 0, 0) ' 设置背景颜色为红色```这只是一个简单的用法示例。

MSFlexGrid控件的常用属性

MSFlexGrid控件的常用属性
FixedCols
获得或设置FlexGrid的固定(不可滚动)列的总数
FixedRows
获得或设置FlexGrid的固定(不可滚动)行的总数
FocusRect
决定FlexGrid控件是否应该绘制一中心矩形环绕当前单元。取值为:
0 flexFocusNone
1 flexFocusLight
2 flexFocusHeavy
1 flexGridFlat(实线)
2 flexGridInset(突出)
3 flexGridRaised
GridLinesFixed
获得或设置固定行和列的画线的类型。取值为:
0 flexGridNone(无网络线)
1 flexGridFlat(实线)
2 flexGridInset(突出)
3 flexGridRaised(凹陷)
该控件获得焦点时,失去焦点的控件的Validate事件是否发生。取值为:
True发生
False不发生
Clos
决定FlexGrid中的总列数
DataSource
获得或设置控件的数据源
DragIcon
该对象在拖动过程中鼠标的图标
DragMode
该对象的拖动模式,取值为:
0 vbManual(手动)
1 vbAutomatic(自动)
Enabled
用于设定是否对事件产生响应。取值为:
True可用
False不可用。在执行程序时,该对象用灰色显示,并且不响应任何事件
FillStyle
决定是否设置FlexGrid的文本属性或单元格属性之一可以应用到全部已选的单元。取值为:
0 flexFillSingle
1 flexFillRepeat

VB数据库编程中MSHFlexGrid控件用法详解【精选】

VB数据库编程中MSHFlexGrid控件用法详解【精选】

VB数据库编程中MSHFlexGrid控件用法详解添加MSHFlexGrid将Name改成flex1添加text 将name 改成txteditPublic rs1 As New ADODB.Recordset, rs2 As New ADODB.Recordset '定义数据集对象Dim i As Integer, j As IntegerSub EditKeyCode(MSHFlexGrid As Control, Edt As Control, KeyCode As Integer, Shift As Integer)'标准编辑控件处理。

Select Case KeyCodeCase 27 'ESC:隐藏焦点并将其返回MSFlexGridEdt.Visible = FalseMSHFlexGrid.SetFocusCase 13 'ENTER 将焦点返回MSFlexGrid。

MSHFlexGrid.SetFocusDoEventsIf MSHFlexGrid.Col < MSHFlexGrid.Cols - 1 ThenMSHFlexGrid.Col = MSHFlexGrid.Col + 1ElseIf MSHFlexGrid.Col = MSHFlexGrid.Cols - 1 ThenMSHFlexGrid.Row = MSHFlexGrid.Row + 1MSHFlexGrid.Col = 1End IfEnd IfCase 38 '向上MSHFlexGrid.SetFocusDoEventsIf MSFlexGrid.Row > MSFlexGrid.FixedRows ThenMSFlexGrid.Row = MSFlexGrid.Row - 1End IfEnd SelectEnd SubSub view_DP()If flex1.Col = 4 Or flex1.Col = 5 Or flex1.Col = 6 Then'格式化Flex1表的第7列、第8列、第9列、第11列flex1.TextMatrix(flex1.Row, 5) = Format(flex1.TextMatrix(flex1.Row, 5), "0.00")flex1.TextMatrix(flex1.Row, 6) = Val(flex1.TextMatrix(flex1.Row, 4)) * Val(flex1.TextMatrix(flex1.Row, 5))flex1.TextMatrix(flex1.Row, 6) = Format(flex1.TextMatrix(flex1.Row, 6), "0.00") End IfDim A, B As Single '声明单精度浮点型变量On Error Resume NextFor i = 1 To flex1.Rows - 1If flex1.TextMatrix(i, 1) <> "" And flex1.TextMatrix(i, 4) <> "" And flex1.TextMatrix(i,6) <> "" ThenA = Val(flex1.TextMatrix(i, 6)) + A '求合计金额B = Val(flex1.TextMatrix(i, 4)) + B '求合计数量End IfNext ilblCount = BlblSum = Format(A, "0.00") '格式化合计金额End SubSub SetButtons(bVal As Boolean)cmdRegister.Enabled = Not bValcmdSave.Enabled = bValcmdCancel.Enabled = bValflex1.Enabled = bValFrame1.Enabled = bValEnd SubPrivate Sub DataGrid2_KeyDown(KeyCode As Integer, Shift As Integer)If KeyCode = vbKeyReturn ThenWith Adodc2.Recordset'赋值给flex1表格If .Fields("商品名称") <> "" Then flex1.TextMatrix(flex1.Row, 1) = Trim(.Fields("商品名称"))If .Fields("规格") <> "" Then flex1.TextMatrix(flex1.Row, 2) = Trim(.Fields("规格"))If .Fields("单位") <> "" Then flex1.TextMatrix(flex1.Row, 3) = Trim(.Fields("单位"))flex1.TextMatrix(flex1.Row, 5) = .Fields("成本价")End Withflex1.Col = 4DataGrid2.Visible = False 'DataGrid2不可见txtEdit.Text = ""txtEdit.SetFocusEnd IfIf KeyCode = vbKeyEscape Then '按ESC键DataGrid2不可见DataGrid2.Visible = False' txtEdit.SetFocus 'txtEdit获得焦点End IfEnd SubPrivate Sub delone_Click()For i = 1 To flex1.Cols - 1flex1.TextMatrix(flex1.Row, i) = ""Next iview_DPEnd SubPrivate Sub flex1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)'利用PopupMenu方法If Button And vbRightButton ThenPopupMenu edit '弹出菜单End IfEnd SubPrivate Sub Form_Load()Dim i As Integer'使第一列较窄。

MSFlexGrid控件属性及使用方法整理

MSFlexGrid控件属性及使用方法整理

MSFlexGrid控件属性及使用方法整理================================================= MSFlexGrid总行数和总列数的定义:MSFlexGrid1.Rows = 5 '规定表格的总行数为5行MSFlexGrid1.Cols = 2 '规定表格的总列数为2行MSFlexGrid某一单元格的文本内容MSFlexGrid1.TextMatrix(3, 0) ="网站地址" '定义第3行的左边表头文本内容为:“网站地址”MSFlexGrid1.TextMatrix(3, 2) =" " 定义第3行第2列的文本内容为:“”右键选中MSFlexGrid的Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = vbRightButton ThenMSFlexGrid1.Row = y / MSFlexGrid1.RowHeight(0) - 0.5MSFlexGrid1.RowSel = MSFlexGrid1.Row'右键选种当前行---备用u3u3:'MSFlexGrid1.Col = 0'MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1'右键选种当前单元格---备用u3u3:'MSFlexGrid1.Col = x / MSFlexGrid1.ColWidth(0) - 0.5'MSFlexGrid1.Col = MSFlexGrid1.Col'Text1.Text = MSFlexGrid1.TextEnd IfEnd SubMSFlexGrid的单元格被点击时的事件Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlue '被点中MSFlexGrid的单元格背景变兰色MSFlexGrid1.CellForeColor = vbWhite '字体变白色End SubMSFlexGrid的单元格失去光标后的事件Private Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd Sub使MSFlexGrid的单元格内容可编辑'前提:新建两个text文本框,分别为text1和text1'====================从这里开始,使单元格可以编辑Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlueMSFlexGrid1.CellForeColor = vbWhiteText1.Text = MSFlexGrid1.TextText1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd SubPrivate Sub Text1_Change()MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, MSFlexGrid1.Col) = Text1.TextEnd SubPrivate Sub Text2_Change() '修改表头Dim r, c As Integerr = MSFlexGrid1.Rowc = 0MSFlexGrid1.TextMatrix(r, 0) = Text2.TextEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Select Case KeyCodeCase vbKeyLeft, vbKeyRight, vbKeyUp, vbKeyDownKeyCode = 0End SelectEnd Sub'====================使单元格可以编辑,到此结束MSFlexGrid选中整行和整列右键点 MSFlexGrid控件,选“属性/样式”,把“合并单元格”选择为:“0 - Never”然后运行程序,就会发现MSFlexGrid可以自由选择整行或整列了!MSFlexGrid插入行Private Sub Command1_Click()If MSFlexGrid1.Rows < 2 ThenMSFlexGrid1.AddItem "AAA" & vbTab & "bbb"ElseMSFlexGrid1.AddItem "asdas" & vbTab & "bbb", 2 '这里的数字2表示在第2行处插入行End IfEnd SubMSFlexGrid删除行MSFlexGrid1.RemoveItem 3 '删除第三行。

MSFlexGrid控件属性及使用方法

MSFlexGrid控件属性及使用方法

MSFlexGrid控件属性及使用方法整理by u3u3以下容由u3u3编写测试成功!请注明来自:================================================= MSFlexGrid总行数和总列数的定义:MSFlexGrid1.Rows = 5 '规定表格的总行数为5行MSFlexGrid1.Cols = 2 '规定表格的总列数为2行MSFlexGrid某一单元格的文本容MSFlexGrid1.TextMatrix(3, 0) ="地址" '定义第3行的左边表头文本容为:“地址”MSFlexGrid1.TextMatrix(3, 2) =" " 定义第3行第2列的文本容为:“”右键选中MSFlexGrid的Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = vbRightButton ThenMSFlexGrid1.Row = y / MSFlexGrid1.RowHeight(0) - 0.5MSFlexGrid1.RowSel = MSFlexGrid1.Row'右键选种当前行---备用u3u3:'MSFlexGrid1.Col = 0'MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1'右键选种当前单元格---备用u3u3:'MSFlexGrid1.Col = x / MSFlexGrid1.ColWidth(0) - 0.5'MSFlexGrid1.Col = MSFlexGrid1.Col'Text1.Text = MSFlexGrid1.TextEnd IfEnd SubMSFlexGrid的单元格被点击时的事件Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlue '被点中MSFlexGrid的单元格背景变兰色MSFlexGrid1.CellForeColor = vbWhite '字体变白色End SubMSFlexGrid的单元格失去光标后的事件Private Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd Sub使MSFlexGrid的单元格容可编辑'前提:新建两个text文本框,分别为text1和text1'====================从这里开始,使单元格可以编辑Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlueMSFlexGrid1.CellForeColor = vbWhiteText1.Text = MSFlexGrid1.TextText1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd SubPrivate Sub Text1_Change()MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, MSFlexGrid1.Col) = Text1.TextEnd SubPrivate Sub Text2_Change() '修改表头Dim r, c As Integerr = MSFlexGrid1.Rowc = 0MSFlexGrid1.TextMatrix(r, 0) = Text2.TextEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) Select Case KeyCodeCase vbKeyLeft, vbKeyRight, vbKeyUp, vbKeyDownKeyCode = 0End SelectEnd Sub'====================使单元格可以编辑,到此结束MSFlexGrid选中整行和整列右键点 MSFlexGrid控件,选“属性/样式”,把“合并单元格”选择为:“0 - Never”然后运行程序,就会发现MSFlexGrid可以自由选择整行或整列了!MSFlexGrid插入行Private Sub Command1_Click()If MSFlexGrid1.Rows < 2 ThenMSFlexGrid1.AddItem "AAA" & vbTab & "bbb"ElseMSFlexGrid1.AddItem "asdas" & vbTab & "bbb", 2 '这里的数字2表示在第2行处插入行End IfEnd SubMSFlexGrid删除行MSFlexGrid1.RemoveItem 3 '删除第三行。

MSHflexGrid表格控件使用方法(1)

MSHflexGrid表格控件使用方法(1)

MSHflexGrid表格控件使用方法(1)2009-07-18 14:36下面我给大家讲一下MSHFLEXGRID常用的属性,方法事件,还有一些不能不知道的技巧.1) MSHFLEXGRID的重要属性.MSHFLEXGRID的属性非常多,其实绝大部分的属性和网格的显示的外观有关.在MSDN里,这些属性足以将人搞得眼花缭乱的了(我相信你没有耐性一个一个地翻查).下面列出常用的属性,方法事件及其简要说明.以便查阅.属性类型说明AllowBigSelector Boolean 返回/设置一个值,定义当在行或列的头部单击时,是否该行或列将整个被选中AllowUseResizing Enum 设置/返回一个值,定义用户是否可以调整网格行,列的尺寸BackColor Ole_Color 设置/返回一网格中非固定单元的背景色BackColorBand Array/Ole_Color 设置/返回网格中每个独立BAND的背景色BachColorBkg Ole_Color 设置/返回网格的背景色(单元头部除外) BackColorFixed Ole_Color 设置/返回网格中固定单元的背景色BackColorHeader Array/Ole_Color 设置/返回网格头部单元的背景色BackColorIndent Array/Ole_Color 设置/返回网格中凹痕部分的背景色BackColorSel Ole_Color 设置/返回网格选中单元的背景色BackColorUnpopulated Ole_Color 设置/返回网格非用户操作区的背景色BandData Array/Long 为独BAND设置/返回任意的值,以合在代码中通过这些值确定BANDBandDisplay Enum 定义在网格中BAND是水平还是垂直显示BandExpandable ARRAY/BOOLEN 设置/返回值指明独立的BAND能否被折叠或展开BandIndent Array/Long 定义BAND划分的字段数量BandLevel Long 返回当前的单元包含的BAND总数量Bands Long 返回网格中BAND总数量CellAlignment Integer 设置/返回一个值以定义当前单元的水平和垂直对齐方式CellBackColor Ole_Color 定义当前单元的字体是否为粗体CellFontBold Boolean 定义当前单元的字体是否为粗体CellFontItalic Boolean 定义当前单元的字体是否为斜体CellFontName String 定义当前单元的字体名CellFontSize String 定义当前单元的字体大小CellFontStrikeThough Boolean 定义当前单元的字体是否为突显示CellFontUnderline Boolean 定义当前单元的字体是有下划线CellFontWidth Single 定义当前单元的字体宽(用点表示)CellFontColor Ole_Color 设置/返回当前单元格的前景色CellHeight Long 设置/返回当前单元格的高度CellLeft Long 返回当前单元格的左边距CellPicture StdPicture 设置/返回当前单元格的图片CellPictureAlignment Integer 设置/返回当前单元格或某范围的单元格的图像对齐方式CelltextStyle Enum 设置/返回当前单元或选中范围单元文本的3D风格CellTop Long 返回当前单元格的垂直位置CellType Enum 设置/返回当前单元格的类型(标准.固定)CellWidth Long 返回/设置当前的单元的宽度Clip String 设置/返回网格选定范围单元的内容Col Array/Integer 设置/返回当前单元的水平坐标ColAlignment Array/Integer 设置/返回当前列的对齐方式ColalignmentBand Array/Integer 设置/返回BAND数据列的对齐方式ColAlignmentFixed Array/Integer 设置/返回固定单元数据的对齐方式ColAlignmentHeader Array/Integer 设置/返回固定头部单元数据的对齐方式ColData Ayyay/Long 为独立列设置/返回任意的值,以合在代码中通过这些值确定列ColHeader Array/Enum 定义每个BAND头部是否显示ColHeaderCaption Array/Single 定义每个BAND的列头部显示的文本ColIsVisible ARRAY/BOOLEN 返回/设置某个列是否可见ColPos Array/Long 返回某个给定列的左上角和网格左上角的距离Colposition Array/Long 设置网格列的位置Cols Long 返回/设置网格的列数量ColSel Array/Long 设置/返回某个范围单元的起始列ColWidth Array/Long 设置/返回某个列的宽度ColWordWrapOption Array/Integer 设置/返回网格的非固定单元是否允许WRAP ColWordWrapOptionBand Array/Integer 定义网格的BAND是否允许WRAP ColWordWrapOptionFixed Array/Integer 定义列的固定单元是否允许WRAP ColWordWrapOptionHeader Array/Integer 定义各头部是否允许WRAP DataField Array/Single 一个独立列绑定的数据库字段FillStyle Enum 定义改变文本或单元的其他属性是影响所有的选中单元还是只影响活动单元FixedCols Long 设置/返回固定列的列数FixedRows Long 设置/返回固定行的行数FocusRect Enum 定义控件对当前单元的焦点表示Font StdFont 返回/设置默认字体或各单元使用的字体FontBand Array/StdFont 设置/返回各BAND使用文本的字体FontFixed Single 设置/返回固定单元使用的字体FontHeader Array/StdFont 设置/返回各头部使用的字体FontWidth Single 设置/返回默认字体宽度FontWidthBand Array/Single 设置/返回BAND使用的字宽FontWidthFixed Single 设置/返回固定单元使用的字宽FontWidthHeader Array/Single 设置/返回每个头部使用的字宽ForeColr Ole_Color 设置/返回网格非固定单元使用的前景色ForeColorBand Array/Ole_Color 设置/返回网格各BAND的前景色ForeColorFixed Ole_Color 设置/返回网格固定单元的前景色.ForeColorHeader Array/Ole_Color 设置/返回网格头部单元的前景色ForeColorSel Ole_Color 设置/返回设置单元的前景色FormatString String 定义一个格式串用来设置网格列的宽度,对齐方式,固定行文本固定列文本GridColor Ole_Color 设置/返回网格单元间的线的颜色GridColorBand Array/Ole_Color 设置/返回网格BAND的线的颜色GridColorFixed Ole_Color 设置返回网格固定单元间的线的颜色GridColorHeader Array/Ole_Color 设置/返回网格头部间的线的颜色GridColorIndent Ole_Color 设置/返回网格INDENT单元间的线的颜色GridColorUnpopulated Ole_Color 设置/返回网格UNPOPULATED区域间的颜色GrigLine Enum 定义网格单元间的线的类型GrigLinesBand Array/Enum 定义网格各BAND间的线的类型GrigLinesFixed Enum 定义网格固定单元的线的类型GrigLinesHeader Array/Enum 定义网格各头部间的线的类型GrigLinesIndent Array/Enum 定义网格INDENT单元间的线的类型GrigLinesUnpopulated Enum 定义网格UNPOPULATED区域间的线的类型GrigLinesWidth Integer 设置/返回网格单元间的线的宽度GrigLinesWidthBand Array/Integer 设置/返回网格各BAND间的线的宽度GrigLinesWidthFixed Integer 设置/返回网格固定单元间的线的宽度GrigLinesWidthHeader Array/Integer 设置/返回网格各头间的线的宽度GrigLinesWidthIndent Array/Integer 设置/返回网格INDENT单元间的线的宽度GrigLinesWidthUnpopulated Integer 设置/返回网格UNPOPULATED区域间的宽度Hieght Enum 定义如何以及何时高亮度显示网格的选中单元LeftCol Long 网格最械的可见列MergeCells Enum 设置/返回一个值表明如何及何时将有相同内容的记录进行合并MergeCol ARRAY/BOOLEN 设置/返回一个值表明哪些列可以将内容合并MergeRow ARRAY/BOOLEN 设置/返回一个值表明哪些行可以将内容合并MouseCol Long 返回鼠标光标的列坐标位置MouseRow Long 返回鼠标光标的行坐标位置Picture StdPicture 返回MSHFLEXGRID的控件快照PictureType Enum 设置/返回PICTURE类型Redraw Boolean 设置/返回一个值,表明MSHFLEXGRIDR控件是否在每个改变后重画Row Long 设置/返回当前单元的垂直坐标RowData Array/Long 为各行设置/返回任意的值,以合在代码中通过这些值确定行RowExpandable Boolean 定义当前行是否可以展开RowExpanded Boolean 返回一个值表明当前行是否展开RowHeight Array/Long 设置/返回各行的高度RowHeightMin Long 设置/返回网格中行的最小高度RowIsVisible ARRAY/BOOLEN 设置/返回一个值,表明某个特定列是否可见RowPos Array/Long 返回给定行左上角和MSHFLEXGRID控件左上角的距离RowPosition Array/Long 设置某个网格行的位置Rows Long 返回网格的行的总数或者或BAND的行的总数RowSel Long 设置/返回一个范围的单元的起始行RowSizingMode Enum 设置/返回一个值表明对一行的设置是影响网格的所有行还是只影响被调整的行ScrollBars Enum 设置/返回一个值表明MSHFLEXGRID控件的滚动条类型ScrollTrack Boolean 设置/返回一个值表明网格内容是在用户移动滚动条时随着改变还是滚动结束后改变SelectionMode Enum 设置/返回一个值表明MFHFLEXGRID控件允许的选择类型. Sort Enum 根据某些村准备设置排序的值Text String 设置/返回一个单元或一个范围内单元的文本内容TextArray array/string 不改变ROW,COL属性,设置/返回任意单元的文本内容TextMatrix array/string 设置/返回某个选定行,列的单元的文本内容TextStyle Enum 设置/返回网格通常单元的3D文本风格TextStyleBand Array/Enum 设置/返回网格BAND的3D文本风格TextStyleFixed Enum 设置/返回网格各固定行的3D文本风格TextStyleHeader Array/Enum 设置/返回网格各头部的3D文本风格TopRow Long 设置/返回网格最上面的可见行Version Integer 返回正在使用MSHFLEXGRID控件的版本WordWrap Boolean 定义当到达单元的边界时,网格的单元的内容是否WRAP2) MSHFLEXGRID控件的重要方法方法说明AddItem 向网格中加入一新行Clear 清除网格中的内容ClearStructure 清除网格的结构(映射信息)CollapseAll 折叠网格的某个特定的所有行ExpandAll 展开网格的某个特定的所有行RemoveItem 从网格中清除一行方法AddItem和RemoveItem可以用来向网格中加入或删除行(BANDS).如果折叠或展开某个BAND的所有行,则可以使用COLLAPSEALL和EXPAANDALL方法.方法CLEAR可以清除网格中的内容,但不影响网格的行,列数,如果要清除网格的结构,包括顺序及网格各列的名称,应当使用ClearStructure方法.3) MSHFELXGRID的控件的主要事件Collapse 用户折叠了网格的一行Compare 当SORT属性被设置为CUSTOMERSORT,允许用户定义排序过程EnterCell 当一个新的单元成为当前活动单元时Expand 用户展开了网格的一行LeaveCell 当一个新单元成为当前活动单元前RowColChange 当一个新单元成为当前活动单元时Scroll 用户用键盘,滚动条滚动网格的内容或网格的内容由程序滚动时SelChangeEvent 一个新范围内的单元被选中EnterCell, LeaveCell, RowColChange事件相互联系,因为字们都在当一个新单元成为当前活动单元时被激发,实际上这些事件的顺序是:LeaveCell, EnterCell然后是RowColChange.Collapse和Expand事件在用户折叠或者展开网格的一行(BAND)时被激发.属性ROW和COL可以用来确定用户折叠或者展开的单元.当SORT属性设置为9时,对网格的每两行发生一次COMPARE事件,用户排序方法使你可以选择按照午任意列或单元对行排序.注意,使用这种排序方式的速度会慢于BUILD-IN排序.不论采用何种方式,只要对网格进行滚动时,SCROLL事件就会被激发.当SCROLLTRACK属性设置为TRUE时,如果用户用鼠标拖动或滚动时,该事件也被激发,如果SCROLLTRACK属性被设置为FALSE时,SCROLL事件只在拖动结束后激发一次.当选择单元格变化时, SelChangeEvent事件会被激发,对选择的单元范围的改变,可以通过用户操作或程序代码来实现.1) MSHFLEXGRID的编辑.关于MSHFLEXGRID的编辑,很多书都有介绍.一般都是用一个TEXTBOX作为的输入框,通过移动TEXTBOX来达到类似于EXCEL的编辑功能.很多书介绍的方法是在MOUSEDOWN或CLICK事件中移动TEXTBOX,然后,再在LeaveCell事件中写入. 本文的方法与其有类似之处,但亦有小许不同,主要在写入网格时,在TEXTBOX的Change事件中写入.2)网格内容的保存与加载对于网格的保存,一般人喜欢使用.Clip属性,将整个网格一次性地写入一个文件中,当然,在文件不大时,这当然是一个好办法.但是,当网格达到几千行几万行时,这个方法好象不是很好.(各位如果有兴趣的话,可以试试下面的程序)‘将网格设置成5000*12,然后用随机数填充网格.然后,调用下面程序Private Sub Command4_Click()Dim msgStr As StringDim FileID As LongDim T1 As DateDim T2 As DateT1 = Timer()With MSHFlexGrid1.Row = 0.Col = 0.RowSel = .Rows - 1.ColSel = .Cols - 1FileID = FreeFilemsgStr = .ClipOpen "C:\LX.TXT" For Output As #FileIDPrint #FileID, msgStrClose #FileIDEnd WithT2 = Timer()MsgBox T2 - T1End Sub反正我的感觉是:好象死机一般,要过一分多钟后计算机才能反应过来(实测是82.5秒左右,我的计算机是:AMD2500+,512M内存).为什么一次性的写入会如此的慢呢?这大概是有的人想不到的地方.其实,这跟VB处理字符串的机制有关,如果处理5K的字符串要一秒的话,那么,处理30K的字符串绝不是处理5K的6倍,而是长得多.这种关系几乎是呈某种几何级数的关系.明白了VB原来处理大字符串的效率原来是这么底.那么,解决的办法自然就有了.就是一个字:拆,将大拆小将会大大地加快处理字符串的速度.所以,下面的网格的保存函数的主要思想就将网格中的数据分步保存,每一次保存一小部分.直到整个网格保存完成.当然,其中还有一些细小的技巧,例如:保存时将先将网格中的行,列,固定行,固定列的总数保存,然后,保存各列的宽度,再然后正式保存数据.这都是为了加载的方便与快捷作了一定的处理.(参考下面的程序)Option ExplicitDim m_Row As LongDim m_Col As LongPrivate Sub Command3_Click()'填充网格Dim R As LongDim C As LongFor R = 0 To MSHFlexGrid1.Rows - 1For C = 0 To MSHFlexGrid1.Cols - 1MSHFlexGrid1.TextMatrix(R, C) = R & CNextNextEnd SubPrivate Sub Form_Load()With MSHFlexGrid1Text1.Visible = False.RowHeight(-1) = 285'设定网格是5000行.12列..Rows = 5000: .Cols = 12End WithEnd Sub'保存文件Private Sub Command1_Click()Call SaveFile(MSHFlexGrid1, "c:\kk.grd")End Sub'加载文件Private Sub Command2_Click()Call LoadFile(MSHFlexGrid1, "c:\kk.grd")End SubPrivate Sub MSHFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)Text1.Visible = FalseWith MSHFlexGrid1m_Row = .MouseRowm_Col = .MouseColIf m_Row < .FixedRows Then m_Row = .FixedRowsIf m_Col < .FixedCols Then m_Col = .FixedCols.Row = m_Row: .Col = m_ColText1.Move .Left + .CellLeft, .Top+ .CellTop, .CellWidth, .CellHeightText1.Text = .TextText1.Visible = TrueText1.SetFocusEnd WithEnd SubPrivate Sub Text1_Change()With MSHFlexGrid1.TextMatrix(m_Row, m_Col) = Text1End WithEnd Sub'//**以下是相应的功能函数''加载一个文件到表格.'函数:LoadFileToGrid'参数:MsgObj Mshfelxgrid控件名,FileName 加载的文件名'返回值:=True 成功.=True 失败.Public Function LoadFile(MsgObj As Control, FileName As String) As Long Dim InputID As Long, FileID As LongDim EndRow As Long, DltAdd As LongDim AddFlag As BooleanDim KeyTab As String, KeyEnter As StringDim FixedRows As Long, FixedCols As LongDim GridInput As String, AddSum As String, RowColMax() As String Dim GridColMax As Long, GridRowMax As LongDim OleRow As Long, OleCol As LongDim SumFmtStr As StringDim DltCol As LongOn Error Resume NextWith MsgObj.Redraw = FalseErr.Clear: SetAttr FileName, 0If Err.Number <> 0 Then '如果文件不存在Err.ClearCall SaveFile(MsgObj, FileName).Redraw = TrueExit FunctionEnd IfKeyTab = Chr$(vbKeyTab): KeyEnter = Chr$(13)InputID = 0: AddSum = ""AddFlag = False: DltAdd = 25: DltCol = 1.Redraw = False: .FixedRows = 0: .FixedCols = 0FileID = FreeFileOpen FileName For Input As #FileIDDo While Not EOF(FileID) ' 循环至文件尾。

msflexgrid控件用法

msflexgrid控件用法

msflexgrid控件用法MSFlexGrid控件是Visual Basic 6.0提供的一种非常有用的表格控件,可以在窗体中创建可编辑的网格。

它允许用户浏览和编辑多行和多列的数据,还可以对数据进行排序、过滤和格式化。

在本文中,我将详细介绍MSFlexGrid控件的用法,包括创建、显示和操作表格数据。

一、创建和显示MSFlexGrid控件在使用MSFlexGrid控件之前,首先需要在窗体中添加一个FlexGrid控件。

在VB6的工具箱中,可以找到FlexGrid控件并将其拖放到窗体上。

在窗体上添加FlexGrid控件后,可以通过设置控件的属性来进行进一步的配置和定制。

1. 设置列数和行数在使用MSFlexGrid控件之前,首先需要设置表格的列数和行数。

可以通过设置Col属性和Row属性来实现。

例如,设置表格的列数为5,行数为10的代码示例如下:MSFlexGrid1.Cols = 5MSFlexGrid1.Rows = 102. 设置表格显示样式可以通过设置控件的属性来设置表格的样式,例如,可以设置表格的边框颜色、背景颜色和字体。

以下是一些常用的属性设置示例:MSFlexGrid1.BorderStyle = flexBorderStyleFixedSingle ' 设置边框样式为单线条MSFlexGrid1.BackColor = vbWhite ' 设置背景颜色为白色MSFlexGrid1.ForeColor = vbBlack ' 设置前景颜色为黑色MSFlexGrid1.FontSize = 12 ' 设置字体大小为12号3. 添加数据到表格可以通过设置控件的TextMatrix属性来添加数据到表格中。

TextMatrix属性是一个二维数组,可以通过指定行和列的索引来设置相关的数据。

例如,将数据“Apple”添加到(1,1)位置的代码示例如下:MSFlexGrid1.TextMatrix(1, 1) = "Apple"二、操作MSFlexGrid控件中的数据在将数据添加到表格之后,可以对表格中的数据进行许多操作,例如,读取单元格数据、排序和过滤数据等。

wincc msflexgrid控件的用法

wincc msflexgrid控件的用法

wincc msflexgrid控件的用法WinCC是西门子推出的一套面向过程自动化的监控与控制软件,其功能强大,覆盖了自动化行业的各个领域,包括工业自动化、制造业、能源管理、公共设施、楼宇自动化等。

WinCC的多种控件是实现监控和报警功能的核心部分之一,其中MSFlexGrid控件是一种常用的控件之一,具有强大的灵活性和可扩展性,下面将详细介绍MSFlexGrid控件的用法。

一、MSFlexGrid控件的基本概念和特点MSFlexGrid控件是一种用于显示和编辑表格数据的控件,其特点是可以根据需要自定义行数和列数,并可以显示大量的数据。

MSFlexGrid控件支持多种数据类型,包括字符串、整数、浮点数等,同时还可以设置行高、列宽、颜色、字体等属性,以便于满足不同的显示需求。

二、MSFlexGrid控件的创建和初始化创建MSFlexGrid控件的步骤如下:1. 首先,需要在VB环境中打开一个新的工程,并添加一个MSFlexGrid控件。

2. 然后,可以通过拖拽的方式调整控件大小和位置,以适应实际的界面设计需求。

3. 接下来,需要设置控件的一些基本属性,例如行数、列数、行高、列宽等。

初始化MSFlexGrid控件的步骤如下:1. 在VB环境中打开代码编辑器,并在Form_Load事件中添加代码。

2. 通过代码设置控件的属性,例如行数、列数、行高、列宽等。

3. 通过代码设置控件的样式,例如背景颜色、字体等。

4. 可以通过代码向控件中添加数据,例如通过循环遍历的方式向每个单元格赋值。

三、MSFlexGrid控件的常用属性和方法MSFlexGrid控件有很多常用的属性和方法,下面列举一些常用的如下:1. Rows属性,用于设置和获取控件的行数。

2. Cols属性,用于设置和获取控件的列数。

3. RowHeights属性,用于设置和获取控件的行高。

4. ColWidths属性,用于设置和获取控件的列宽。

5. TextMatrix方法,用于设置和获取单元格的数据。

VSFLEXgrid控件属性、用法大全

VSFLEXgrid控件属性、用法大全

VSFLEXgrid控件属性、用法大全[主要特点]VSFlexGrid Pro 7.0 是一功能强大的数据表格控件,高速、紧凑、灵活、轻便、无须依赖任何应用工具,支持数据化格式选项,能将表格列连接到图象列和墙纸属性上以提高应用工具的实现程度。

如果应用工具无须数据库的支持,如果你的应用程序不需要数据库的支持,那么使用VSFlexGrid Pro新的非绑定版本可以使应用程序的尺寸最小,而且发布应用程序时也不需要发布相应的ADO动态链接库. VSFlexGrid Pro 7.0可代替任何简单的列表框,浏览器,记事本等等,所以说它不仅仅只是一个表格控件。

FLexArray网格扩展控件能够设置每个单元格的颜色和字体/能够对单元内容能进行快速有效的排序/设置RowPosition和ColPosition属性,即可在运行状态移动行列的位置/使用MergeCell属性,无须改写代码即可将内容一致的单元格加以合并/能够在设计过程定义行列的页眉、宽度和位置,进行界面设计/改变缺省字体大小,能够自动调整与之相对应的单元格尺寸/支持2000行以上表格,单元格内容可达32k以上/能够进行行列的隐藏/能够进行字体的微调整(参考FontWidth属性)/具有多种多样的网格形式和色彩/支持图文混排/多种光标和被选择内容的显示方式等等。

FlexString字符串处理控件能够设定检索字符串与置换字符串,在表格中找到与检索字符串相符的字符并将其置换为置换字符串中设置的字符/可以将检索字符串分成几个字段,给每个字段加入标签,使用标签代替字符串进行检索与置换/使用规范化表达式,规范化表达式是一个设定和匹配字符串的注释,类似于数学公式里的运算符。

[功能]最新功能提供了丰富的功能可以迅速创建灵活、功能强大的前端,无须用户额外支出。

VSFlexGrid Pro 7.0 100%向下兼容VB环境下的MSFlexGrid,所以对于目前的版本升级非常容易。

层次型电子表格控件(MSHFlexGrid)的常用属性

层次型电子表格控件(MSHFlexGrid)的常用属性

2.22、层次型电子表格控件(MSHFlexGrid)的常用属性属性说明(Name)层次型电子表格控件的名称(自定义)打开属性页AllowBigSelection 获得或设置是否在行头或列头单击将导致选定整行或整列。

取值为:True 允许False 不允许AllowUserResizing 获得或设置是否允许用户使用鼠标重新调整行或列的大小(调整行高和列宽)。

取值为:0 flexResizeNone(不能调整)1 flexResizeColumns(调整列)2 flexResizeRows(调整行)3 flexResizeBoth(调整行和列)Appearance 获得或设置是否控件可以用三维效果画出(外观效果)。

取值为:0 flexFlat(平面)1 flex3D(立体)BackColor 获得或设置FlexGrid中各种元素的背景色(所有单元格背景颜色)。

可从弹出的调色板选择。

BackColorBkg 获得或设置FlexGrid中各种元素的背景色(网络外背景颜色)。

可从弹出的调色板选择。

BackColorFixed 获得或设置FlexGrid中各种元素的背景色(固定行和列背景颜色)。

可从弹出的调色板选择。

BackColorSel 获得或设置FlexGrid中各种元素的背景色[所选单元格背景颜色(被选中时的背景颜色)]。

可从弹出的调色板选择。

BackColorUnpopulated 获得或设置FlexGrid中各种元素的背景色(所有单元格背景颜色)。

可从弹出的调色板选择。

BandDisplay 获得或设置band的显示类型。

取值为:0 flexBandDisplayHorizontal1 flexBandDisplayVerticalBorderStyle 获得或设置边界样式。

取值为:0 flexBorderNone(无边界线)1 flexBorderFixedSingle(固定单线框)CauseValidation 该控件获得焦点时,失去焦点的控件的Validate事件是否发生。

MsFlexGrid用法大全(转)

MsFlexGrid用法大全(转)

VB中Ms‎F lexG‎r id控件‎的使用细则‎(收集)‎>> 将‎文本赋值给‎M sFle‎x Grid‎的单元格‎M sFle‎x Grid‎.Text‎M atri‎x(3,1‎)=”He‎l lo”‎>> 在‎M sFle‎x Grid‎控件单元格‎中插入背景‎图形Se‎t MsF‎l exGr‎i d.Ce‎l lPic‎t ure=‎L oadP‎i ctur‎e(“C:‎\temp‎\1.bm‎p”)‎>>选中某‎个单元M‎s Flex‎G rid.‎R ow=1‎MsFl‎e xGri‎d.Col‎=1>‎>用粗体格‎式化当前选‎中单元M‎s Flex‎G rid.‎C ellF‎o ntBo‎l d=Tr‎u e>‎>添加新‎的一行使‎用AddI‎t em方法‎,用Tab‎字符分开不‎同单元格的‎内容di‎m row‎as s‎t ring‎row=‎”AAA”‎&vbta‎b&”bb‎b”Ms‎F lexF‎r id1.‎a ddIt‎e m ro‎w>‎>怎样来实‎现MSFl‎e xGri‎d控件单数‎行背景为白‎色,双数的‎行背景为蓝‎色?Di‎m i A‎s Int‎e ger‎W ith ‎M SFle‎x Grid‎1.Al‎l owBi‎g Sele‎c tion‎= Tr‎u e ‟ ‎设置网格样‎式.Fi‎l lSty‎l e = ‎f lexF‎i llRe‎p eat‎F or i‎= 0 ‎T o .R‎o ws -‎1.R‎o w = ‎i: .C‎o l = ‎.Fixe‎d Cols‎.Col‎S el =‎.Col‎s() -‎.Fix‎e dCol‎s - 1‎If i‎Mod ‎2 = 0‎Then‎.Cel‎l Back‎C olor‎= &H‎C0C0C‎0 ‟ 浅‎灰Els‎e.Ce‎l lBac‎k Colo‎r = v‎b Blue‎‟ 兰色‎End ‎I fNe‎x t i‎E nd W‎i th‎>> MS‎F lexG‎r id控件‎如何移到最‎后一行M‎S Flex‎G rid1‎.TopR‎o w = ‎M SFle‎x Grid‎1.Row‎s– 1‎>>如‎何判断ms‎f lexg‎r id有无‎滚动条D‎e clar‎e Fun‎c tion‎GetS‎c roll‎R ange‎Lib ‎"user‎32" (‎B yVal‎hWnd‎As L‎o ng, ‎B yVal‎nBar‎As L‎o ng, ‎l pMin‎P os A‎sLo‎n g, l‎p MaxP‎o s As‎Long‎) As ‎L ong‎P ubli‎c Con‎s t SB‎_HORZ‎= &H‎0Pub‎l ic C‎o nst ‎S B_VE‎R T = ‎&H1‎P ubli‎c Fun‎c tion‎VsSc‎r oll(‎M shGr‎i d As‎MSHF‎l exGr‎i d) A‎s Boo‎l ean ‎‟判断水平‎滚动条的可‎见性Di‎m i A‎s Lon‎gVsS‎c roll‎= Fa‎l sei‎= Ge‎t Scro‎l lRan‎g e(Ms‎h Grid‎.hWnd‎, SB_‎H ORZ,‎lpMi‎n Pos,‎lpMa‎x Pos)‎If l‎p MaxP‎o s <>‎lpMi‎n Pos ‎T hen ‎V sScr‎o ll =‎True‎End ‎F unct‎i on‎P ubli‎c Fun‎c tion‎HeSc‎r oll(‎M shGr‎i d As‎MSHF‎l exGr‎i d) A‎s Boo‎l ean ‎‟判断垂直‎滚动条的可‎见性Di‎m i A‎s Lon‎gHeS‎c roll‎= Fa‎l sei‎= Ge‎t Scro‎l lRan‎g e(Ms‎h Grid‎.hWnd‎, SB_‎V ERT,‎lpMi‎n Pos,‎lpMa‎x Pos)‎If l‎p MaxP‎o s <>‎lpMi‎n Pos ‎T hen ‎H eScr‎o ll =‎True‎End ‎F unct‎i on‎>>程序运‎行时,想动‎态增加MS‎F lexg‎r id的列‎数在第2‎列后插入一‎列:Pr‎i vate‎Sub ‎F orm_‎L oad(‎)Me.‎M SHFl‎e xGri‎d1.Co‎l s = ‎5MSH‎F lexG‎r id1.‎R ows ‎= 2F‎o r i ‎= 0 T‎o Me.‎M SHFl‎e xGri‎d1.Co‎l s - ‎1Me.‎M SHFl‎e xGri‎d1.Te‎x tMat‎r ix(0‎, i) ‎= iM‎e.MSH‎F lexG‎r id1.‎T extM‎a trix‎(1, i‎) = i‎Next‎End ‎S ub‎P riva‎t e Su‎b Com‎m and1‎_Clic‎k()M‎e.MSH‎F lexG‎r id1.‎C ols ‎= Me.‎M SHFl‎e xGri‎d1.Co‎l s + ‎1Me.‎M SHFl‎e xGri‎d1.Co‎l Posi‎t ion(‎5) = ‎3End‎Sub‎>> 请‎教MSFl‎e xGri‎d中的对齐‎功能的使用‎设置MS‎F lexG‎r id1.‎C olAl‎i gnme‎n t(in‎d ex)=‎n>‎>得到MS‎F lexG‎r id控件‎中当前选中‎的一行m‎s flex‎g rid1‎.rows‎e l就是当‎前选中行‎>> 如‎何通过代码‎调节列宽度‎msfl‎e xgri‎d1.co‎l widt‎h(i)=‎4000‎将MsFl‎e xGri‎d控件的内‎容输出到文‎本20‎04-03‎-19 1‎4:25:‎18'O‎u tDat‎a ToTe‎x t'将‎M sFle‎x Grid‎控件中显示‎的内容输出‎到文本文件‎Publ‎i c Su‎b Out‎D ataT‎o Text‎(Flex‎As M‎S Flex‎G rid)‎Dim ‎s As ‎S trin‎gDim‎i As‎Inte‎g erD‎i m j ‎A s In‎t eger‎Dim ‎k As ‎I nteg‎e rDi‎m str‎T emp ‎A s St‎r ing‎O n Er‎r or G‎o To E‎r tMe‎.Mous‎e Poin‎t er =‎11O‎n Err‎o r Re‎s ume ‎N ext‎D oEve‎n tsD‎i m Fi‎l eNum‎As I‎n tege‎rFil‎e Num ‎= Fre‎e File‎Open‎"d:a‎a.txt‎" For‎Outp‎u t As‎#Fil‎e Num‎W ith ‎F lex‎k = .‎R ows‎F or i‎= 0 ‎T o k ‎- 1s‎t rTem‎p = "‎"For‎j = ‎0 To ‎.Cols‎- 1‎D oEve‎n tss‎t rTem‎p = s‎t rTem‎p & .‎T extM‎a trix‎(i, j‎) & "‎,"Ne‎x t j‎P rint‎#Fil‎e Num,‎Left‎(strT‎e mp, ‎L en(s‎t rTem‎p) - ‎1)Ne‎x t i‎E nd W‎i thC‎l ose ‎#File‎N umM‎e.Mou‎s ePoi‎n ter ‎= 0M‎s gBox‎"导出成‎功"Er‎t:Ms‎g Box ‎E rr.D‎e scri‎p tion‎Me.M‎o useP‎o inte‎r = 0‎End ‎S ub增‎加 MsF‎l exGr‎i d 的编‎辑功能‎(作者:佚‎名加载日‎期: 20‎02/3/‎31)‎概述M‎s Flex‎G rid ‎控件没有提‎供文本编辑‎的功能,下‎面的例子演‎示了如何利‎用一个Te‎x tBox‎实现编辑‎当前网格的‎功能。

MSFlexGrid表格控件详细说明

MSFlexGrid表格控件详细说明

MSFlexGrid 表格控件详细说明控件名:Microsoft FlexGrid Control文件:sys\msflxgrd.ocx============================= 属性=========================================■AllowBigSelection 属性在行头或者列头上单击时,(是否)可以使得整个行或者列都被选中。

■AllowUserResizing 属性 (是否)可以用鼠标来对 MSFlexGrid 控件中行和列的大小进行重新调整。

-------------------------------------■Appearance 属性设计时的绘图风格■BorderStyle 属性边框样式-------------------------------------■BackColorBkg 属性 '表格多余部分颜色■BackColorFixed 属性 '表格头部分颜色■BackColorSel属性 '选中部分颜色■BackColor属性 '所有未确定单元的颜色■CellBackColor 和 CellForeColor 属性返回或设置单个单元或者一群单元的背景和前景颜色。

-------------------------------------■ForeColor、ForeColorFixed 以及 ForeColorSel 属性各部分上文本的颜色。

■TextStyle 和 TextStyleFixed[= style ] 属性返回或设置指定单元或者一群单元上文本的三维样式。

----------------------------------------■FixedAlignment (index)= [value] 属性列号,设置值flexAlignLeftTop 0 左顶部flexAlignLeftCenter 1 左中flexAlignLeftBottom 2 左底部flexAlignCenterTop 3 中顶部flexAlignCenterCenter 4 中中flexAlignCenterBottom 5 中底部flexAlignRightTop 6 右顶部flexAlignRightCenter 7 右中flexAlignRightBottom 8 右底部■ColAlignment(number) 属性 [= value ] 返回或设置某一列中数据的对齐方式number=列号,或者 -1(一次性地对所有列进行设置)。

(完整版)MSFlexGrid控件属性及使用方法整理

(完整版)MSFlexGrid控件属性及使用方法整理

MSFlexGrid控件属性及使用方法整理================================================= MSFlexGrid总行数和总列数的定义:MSFlexGrid1.Rows = 5 '规定表格的总行数为5行MSFlexGrid1.Cols = 2 '规定表格的总列数为2行MSFlexGrid某一单元格的文本内容MSFlexGrid1.TextMatrix(3, 0) ="网站地址" '定义第3行的左边表头文本内容为:“网站地址”MSFlexGrid1.TextMatrix(3, 2) =" " 定义第3行第2列的文本内容为:“”右键选中MSFlexGrid的Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = vbRightButton ThenMSFlexGrid1.Row = y / MSFlexGrid1.RowHeight(0) - 0.5MSFlexGrid1.RowSel = MSFlexGrid1.Row'右键选种当前行---备用u3u3:'MSFlexGrid1.Col = 0'MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1'右键选种当前单元格---备用u3u3:'MSFlexGrid1.Col = x / MSFlexGrid1.ColWidth(0) - 0.5'MSFlexGrid1.Col = MSFlexGrid1.Col'Text1.Text = MSFlexGrid1.TextEnd IfEnd SubMSFlexGrid的单元格被点击时的事件Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlue '被点中MSFlexGrid的单元格背景变兰色MSFlexGrid1.CellForeColor = vbWhite '字体变白色End SubMSFlexGrid的单元格失去光标后的事件Private Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd Sub使MSFlexGrid的单元格内容可编辑'前提:新建两个text文本框,分别为text1和text1'====================从这里开始,使单元格可以编辑Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlueMSFlexGrid1.CellForeColor = vbWhiteText1.Text = MSFlexGrid1.TextText1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd SubPrivate Sub Text1_Change()MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, MSFlexGrid1.Col) = Text1.TextEnd SubPrivate Sub Text2_Change() '修改表头Dim r, c As Integerr = MSFlexGrid1.Rowc = 0MSFlexGrid1.TextMatrix(r, 0) = Text2.TextEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Select Case KeyCodeCase vbKeyLeft, vbKeyRight, vbKeyUp, vbKeyDownKeyCode = 0End SelectEnd Sub'====================使单元格可以编辑,到此结束MSFlexGrid选中整行和整列右键点 MSFlexGrid控件,选“属性/样式”,把“合并单元格”选择为:“0 - Never”然后运行程序,就会发现MSFlexGrid可以自由选择整行或整列了!MSFlexGrid插入行Private Sub Command1_Click()If MSFlexGrid1.Rows < 2 ThenMSFlexGrid1.AddItem "AAA" & vbTab & "bbb"ElseMSFlexGrid1.AddItem "asdas" & vbTab & "bbb", 2 '这里的数字2表示在第2行处插入行End IfEnd SubMSFlexGrid删除行MSFlexGrid1.RemoveItem 3 '删除第三行。

MSFlexGrid基本使用

MSFlexGrid基本使用

MSFlexGrid基本使用第一篇:MSFlexGrid基本使用1.给FlexGrid控件绑定成员变量:m_FlexGrid。

2.设置行列数m_FlexGrid.SetCols(4);//设置列数m_FlexGrid.SetRows(6);//设置行数3.设置固定行数和固定列数m_FlexGrid.SetFixedRows(1);//设置固定行数为1行m_FlexGrid.SetFixedCols(0);//设置固定列数为0列4.设置列宽、行高m_FlexGrid.SetColWidth(1,1500);//设置列号为1的列宽为1500m_FlexGrid.SetRowHeight(2,300);//设置行号为2的行高为3005.设置文本对齐方式m_FlexGrid.SetColAlignment(1,4);//设置列号为1的文本对齐方式参数对应描述为:0单元内容顶部左对齐。

1单元内容中间左对齐。

对字符串的缺省设置值。

2单元内容底部左对齐。

3单元内容顶部居中。

4单元内容中间居中。

5单元内容底部居中。

6单元内容顶部右对齐。

7单元内容中间右对齐。

对数字的缺省设置值。

8单元内容底部右对齐。

9单元内容一般对齐方式。

对字符串中间左对齐而对数值中间右对齐。

6.设置表头和单元格内容m_FlexGrid.SetTextArray(0,“Head1”);//设置表头(第1列)内容为“Head1”m_FlexGrid.SetTextMatrix(1,1,“Text”);//设置单元格(行号1列号1)内容为“T ext”7.增加一行m_FlexGrid.AddItem(“AddString”,(COleVariant)(3L));//在行号为3的位置增加一行8.合并单元格for(i=0;i<4;i++)m_FlexGrid.SetTextMatrix(5,i,“合计”);//将行号为5、列号从0到4的单元格内容设为相同“合计”m_FlexGrid.SetMergeCells(2);//设置单元格合并方式(下述)m_FlexGrid.SetMergeRow(5,TRUE);//设置要合并的行SetMergeCells函数的参数值如下:0: flexMergeNever默认的选项,就是不合并1: flexMergeFree不规则的合并2: flexMergeRestrictRows行合并3: flexMergeRestrictColumns列合并4: flexMergeRestrictBoth行,列都合并注意只有单元格内容相同时才能进行合并操作。

Flex布局总结之flex的主要属性及参数用法

Flex布局总结之flex的主要属性及参数用法

Flex布局总结之flex的主要属性及参数⽤法这篇笔记是系统学习flex时所记,适合复习使⽤,新⼿学习还是要配合图⽰和代码来学习更容易理解。

flex布局模型:弹性盒⼦( Flexible Box 或 flexbox),是⼀种当页⾯需要适应不同的屏幕⼤⼩以及设备类型时确保元素拥有恰当的⾏为的布局⽅式。

引⼊弹性盒布局模型的⽬的是提供⼀种更加有效的⽅式来对⼀个容器中的⼦元素进⾏排列、对齐和分配空⽩空间。

⾸先要弄清楚⼏个重要概念:flex-container:弹性盒⼦容器flex-items:flex-container⾥⾯的直接⼦元素叫做flex-items主轴:main axis:main start & main end & main size交叉轴:cross axis:cross start & cross end & cross size⽤在flex container上的CSS属性:flex-flow、flex-direction、flex--wrap、justify-content、align-items、align-content应⽤在flex items上的CSS属性:flex、flex-grow、flex-basis、flex-sshrink、order、align-self开启flex布局:.box { display:flex or inline-flex; } // 块级元素或⾏内元素1. flex-direction :决定了main axis主轴⽅向,默认沿着main axis主轴从main start开始从main start开始往main end⽅向排布。

row---默认从左⾄右, row-reverse----从右⾄左, column----从上⾄下, column-reverse----从下⾄上2. justify-content:决定了flex items在主轴上的对齐⽅式flex-start-----默认与main start对齐, flex-end------与main end对齐, center-------居中对齐space-between-----两边对齐中间等分间距对齐, space-evenly-----等分间距对齐, space-around-----边距时中间距离⼀半3. align-items:决定了flex items在cross axis上的对齐⽅式normal------效果相当于stretch-----当flex items在cross axis⽅向的size为auto时,会⾃动拉伸⾄填充flex containerflex-start----默认与cross start对齐, flex-end------与cross-end对齐, center------居中对齐, baseline------基线对齐,第⼀⾏⽂本底部为基线4. flex-wrap:默认nowrap,不换⾏;wrap,换⾏。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MSFlexGrid控件属性及使用方法整理================================================= MSFlexGrid总行数和总列数的定义:MSFlexGrid1.Rows = 5 '规定表格的总行数为5行MSFlexGrid1.Cols = 2 '规定表格的总列数为2行MSFlexGrid某一单元格的文本内容MSFlexGrid1.TextMatrix(3, 0) ="网站地址" '定义第3行的左边表头文本内容为:“网站地址”MSFlexGrid1.TextMatrix(3, 2) =" " 定义第3行第2列的文本内容为:“”右键选中MSFlexGrid的Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = vbRightButton ThenMSFlexGrid1.Row = y / MSFlexGrid1.RowHeight(0) - 0.5MSFlexGrid1.RowSel = MSFlexGrid1.Row'右键选种当前行---备用u3u3:'MSFlexGrid1.Col = 0'MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1'右键选种当前单元格---备用u3u3:'MSFlexGrid1.Col = x / MSFlexGrid1.ColWidth(0) - 0.5'MSFlexGrid1.Col = MSFlexGrid1.Col'Text1.Text = MSFlexGrid1.TextEnd IfEnd SubMSFlexGrid的单元格被点击时的事件Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlue '被点中MSFlexGrid的单元格背景变兰色MSFlexGrid1.CellForeColor = vbWhite '字体变白色End SubMSFlexGrid的单元格失去光标后的事件Private Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd Sub使MSFlexGrid的单元格内容可编辑'前提:新建两个text文本框,分别为text1和text1'====================从这里开始,使单元格可以编辑Private Sub MSFlexGrid1_EnterCell()MSFlexGrid1.CellBackColor = vbBlueMSFlexGrid1.CellForeColor = vbWhiteText1.Text = MSFlexGrid1.TextText1.SelStart = 0Text1.SelLength = Len(Text1.Text)End SubPrivate Sub MSFlexGrid1_LeaveCell()MSFlexGrid1.CellBackColor = vbWhiteMSFlexGrid1.CellForeColor = vbBlueEnd SubPrivate Sub Text1_Change()MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, MSFlexGrid1.Col) = Text1.TextEnd SubPrivate Sub Text2_Change() '修改表头Dim r, c As Integerr = MSFlexGrid1.Rowc = 0MSFlexGrid1.TextMatrix(r, 0) = Text2.TextEnd SubPrivate Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)Select Case KeyCodeCase vbKeyLeft, vbKeyRight, vbKeyUp, vbKeyDownKeyCode = 0End SelectEnd Sub'====================使单元格可以编辑,到此结束MSFlexGrid选中整行和整列右键点 MSFlexGrid控件,选“属性/样式”,把“合并单元格”选择为:“0 - Never”然后运行程序,就会发现MSFlexGrid可以自由选择整行或整列了!MSFlexGrid插入行Private Sub Command1_Click()If MSFlexGrid1.Rows < 2 ThenMSFlexGrid1.AddItem "AAA" & vbTab & "bbb"ElseMSFlexGrid1.AddItem "asdas" & vbTab & "bbb", 2 '这里的数字2表示在第2行处插入行End IfEnd SubMSFlexGrid删除行MSFlexGrid1.RemoveItem 3 '删除第三行。

该方法无法删除第一行。

如果发现删不了。

那一定是你的其他代码写错或冲突了u3u3复制MSFlexGrid单元格的文本内容Clipboard.SetText MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, MSFlexGrid1.Col)/*******************************************************msflexgrid中有mergecells,mergecol,mergerow属性。

MergeCells 属性返回或设置一个值,决定包含相同内容的单元是否应该跨越多行或多列分组在一个单个单元中。

语法object.MergeCells [=value]MergeCells 属性的语法包含如下部分内容:部分描述object 一个对象表达式,其值为“应用于”列表中的一个对象。

value 一个整数或常数,指定单元分组(合并)。

如设置值中所指定。

设置值value 的设置值如下所示:常数值描述flexMergeNever 0 不显示。

包含相同内容的单元不分组。

这是缺省设置。

flexMergeFree 1 自由。

包含相同内容的单元总是合并。

flexMergeRestrictRows 2 限制行。

只有行中包含相同内容的相邻单元(向当前单元左边)才合并。

flexMergeRestrictColumns 3 限制列。

只有列中包含相同内容的相邻单元(向当前单元上方)才合并。

flexMergeRestrictBoth 4 限制行和列。

只有在行中(向左)或在列中(向上)包含相同内容的单元才合并。

说明合并单元的能力使得您能够以一种清晰、简明的方式显示数据。

可以连同排序和MSHFlexGrid 的列序函数一起合并使用单元。

要使用MSHFlexGrid 的单元合并能力:把MergeCells 设置为除0 以外的一个值。

(设置值之间的区别在示例中解释。

)为要合并行和列把MergeRow 和MergeCol 的数组属性设置为True。

当使用单元合并能力时,MSHFlexGrid 合并包含相同内容的单元。

无论什么时候单元的内容更改,合并都自动的更新。

当MergeCells 被设置为除0 (不显示)以外的一个值时,突出显示的选择自动关闭。

这样做是为加速重画,也是因为包含合并单元范围的选择可能导致不可预料的结果。

**************************************************************/MergeCol、MergeRow 属性返回或设置一个值,决定哪些行和列可以把它们的内容合并。

要使用MergeCells 属性,这些属性必须为True。

语法object.MergeCol(number) [=Boolean]object.MergeRow(number) [=Boolean]MergeCol 和MergeRows 属性的语法包含如下部分:部分描述Object 一个对象表达式,其值为“应用于”列表中的一个对象。

number 一个Long值,指定MSHFlexGrid 中的列或行。

Boolean 一个Boolean值,指定当相邻单元显示相同内容时合并是否发生。

设置值Boolean 的设置值如下所示:部分描述True 当相邻单元显示相同内容时,行向左合并或列向上合并。

False 当相邻单元显示相同内容时,单元不合并。

这是MergeCol 和MergeRow 缺省设置值。

说明如果MergeCells 属性被设置为非零值,具有相同值的相邻单元,只有它们都在一行并且MergeRow 属性被设置为True,或都在一列且MergeCol 属性被设置为True 时才合并。

关于MSHFlexGrid 的合并功能的详细信息,请参阅MergeCells 属性。

=================================================== MSFlexGrid属性类型说明AllowBigSelectorBoolean返回/设置一个值,定义当在行或列的头部单击时,是否该行或列将整个被选中AllowUseResizingEnum设置/返回一个值,定义用户是否可以调整网格行,列的尺寸BackColorOle_Color设置/返回一网格中非固定单元的背景色BackColorBandArray/Ole_Color设置/返回网格中每个独立BAND的背景色BachColorBkgOle_Color设置/返回网格的背景色(单元头部除外)BackColorFixedOle_Color设置/返回网格中固定单元的背景色BackColorHeaderArray/Ole_Color设置/返回网格头部单元的背景色BackColorIndentArray/Ole_Color设置/返回网格中凹痕部分的背景色BackColorSelOle_Color设置/返回网格选中单元的背景色BackColorUnpopulatedOle_Color设置/返回网格非用户操作区的背景色BandDataArray/Long为独BAND设置/返回任意的值,以合在代码中通过这些值确定BAND BandDisplayEnum定义在网格中BAND是水平还是垂直显示BandExpandableARRAY/BOOLEN设置/返回值指明独立的BAND能否被折叠或展开BandIndentArray/Long定义BAND划分的字段数量BandLevelLong返回当前的单元包含的BAND总数量BandsLong返回网格中BAND总数量CellAlignmentInteger设置/返回一个值以定义当前单元的水平和垂直对齐方式CellBackColorOle_Color定义当前单元的字体是否为粗体CellFontBoldBoolean定义当前单元的字体是否为粗体CellFontItalicBoolean定义当前单元的字体是否为斜体CellFontNameString定义当前单元的字体名CellFontSizeString定义当前单元的字体大小CellFontStrikeThoughBoolean定义当前单元的字体是否为突显示CellFontUnderlineBoolean定义当前单元的字体是有下划线CellFontWidthSingle定义当前单元的字体宽(用点表示)CellFontColorOle_Color设置/返回当前单元格的前景色CellHeightLong设置/返回当前单元格的高度CellLeftLong返回当前单元格的左边距CellPictureStdPicture设置/返回当前单元格的图片CellPictureAlignmentInteger设置/返回当前单元格或某范围的单元格的图像对齐方式CelltextStyleEnum设置/返回当前单元或选中范围单元文本的3D风格CellTopLong返回当前单元格的垂直位置CellTypeEnum设置/返回当前单元格的类型(标准.固定)CellWidthLong返回/设置当前的单元的宽度ClipString设置/返回网格选定范围单元的内容ColArray/Integer设置/返回当前单元的水平坐标ColAlignmentArray/Integer设置/返回当前列的对齐方式ColalignmentBandArray/Integer设置/返回BAND数据列的对齐方式ColAlignmentFixed Array/Integer设置/返回固定单元数据的对齐方式ColAlignmentHeaderArray/Integer设置/返回固定头部单元数据的对齐方式ColDataAyyay/Long为独立列设置/返回任意的值,以合在代码中通过这些值确定列ColHeaderArray/Enum定义每个BAND头部是否显示ColHeaderCaptionArray/Single定义每个BAND的列头部显示的文本ColIsVisibleARRAY/BOOLEN返回/设置某个列是否可见ColPosArray/Long返回某个给定列的左上角和网格左上角的距离ColpositionArray/Long设置网格列的位置ColsLong返回/设置网格的列数量ColSelArray/Long设置/返回某个范围单元的起始列ColWidthArray/Long设置/返回某个列的宽度ColWordWrapOption Array/Integer设置/返回网格的非固定单元是否允许WRAPColWordWrapOptionBandArray/Integer定义网格的BAND是否允许WRAP ColWordWrapOptionFixedArray/Integer定义列的固定单元是否允许WRAP ColWordWrapOptionHeaderArray/Integer定义各头部是否允许WRAPDataFieldArray/Single一个独立列绑定的数据库字段FillStyleEnum定义改变文本或单元的其他属性是影响所有的选中单元还是只影响活动单元FixedColsLong设置/返回固定列的列数FixedRowsLong设置/返回固定行的行数FocusRectEnum定义控件对当前单元的焦点表示FontStdFont返回/设置默认字体或各单元使用的字体FontBandArray/StdFont设置/返回各BAND使用文本的字体FontFixedSingle设置/返回固定单元使用的字体FontHeader Array/StdFont设置/返回各头部使用的字体FontWidthSingle设置/返回默认字体宽度FontWidthBandArray/Single设置/返回BAND使用的字宽FontWidthFixedSingle设置/返回固定单元使用的字宽FontWidthHeaderArray/Single设置/返回每个头部使用的字宽ForeColrOle_Color设置/返回网格非固定单元使用的前景色ForeColorBandArray/Ole_Color设置/返回网格各BAND的前景色ForeColorFixedOle_Color设置/返回网格固定单元的前景色.ForeColorHeaderArray/Ole_Color设置/返回网格头部单元的前景色ForeColorSelOle_Color设置/返回设置单元的前景色FormatStringString定义一个格式串用来设置网格列的宽度,对齐方式,固定行文本固定列文本GridColorOle_Color设置/返回网格单元间的线的颜色GridColorBandArray/Ole_Color设置/返回网格BAND的线的颜色GridColorFixedOle_Color设置返回网格固定单元间的线的颜色GridColorHeaderArray/Ole_Color设置/返回网格头部间的线的颜色GridColorIndentOle_Color设置/返回网格INDENT单元间的线的颜色GridColorUnpopulatedOle_Color设置/返回网格UNPOPULATED区域间的颜色GrigLineEnum定义网格单元间的线的类型GrigLinesBandArray/Enum定义网格各BAND间的线的类型GrigLinesFixedEnum定义网格固定单元的线的类型GrigLinesHeaderArray/Enum定义网格各头部间的线的类型GrigLinesIndentArray/Enum定义网格INDENT单元间的线的类型GrigLinesUnpopulatedEnum定义网格UNPOPULATED区域间的线的类型GrigLinesWidthInteger设置/返回网格单元间的线的宽度GrigLinesWidthBandArray/Integer设置/返回网格各BAND间的线的宽度GrigLinesWidthFixedInteger设置/返回网格固定单元间的线的宽度GrigLinesWidthHeaderArray/Integer设置/返回网格各头间的线的宽度GrigLinesWidthIndentArray/Integer设置/返回网格INDENT单元间的线的宽度GrigLinesWidthUnpopulatedInteger设置/返回网格UNPOPULATED区域间的宽度HieghtEnum定义如何以及何时高亮度显示网格的选中单元LeftColLong网格最械的可见列MergeCellsEnum设置/返回一个值表明如何及何时将有相同内容的记录进行合并MergeColARRAY/BOOLEN设置/返回一个值表明哪些列可以将内容合并MergeRowARRAY/BOOLEN设置/返回一个值表明哪些行可以将内容合并MouseColLong返回鼠标光标的列坐标位置MouseRowLong返回鼠标光标的行坐标位置PictureStdPicture返回MSHFLEXGRID的控件快照PictureTypeEnum设置/返回PICTURE类型RedrawBoolean设置/返回一个值,表明MSHFLEXGRIDR控件是否在每个改变后重画RowLong设置/返回当前单元的垂直坐标RowDataArray/Long为各行设置/返回任意的值,以合在代码中通过这些值确定行RowExpandableBoolean定义当前行是否可以展开RowExpandedBoolean返回一个值表明当前行是否展开RowHeightArray/Long设置/返回各行的高度RowHeightMinLong设置/返回网格中行的最小高度RowIsVisibleARRAY/BOOLEN设置/返回一个值,表明某个特定列是否可见RowPosArray/Long返回给定行左上角和MSHFLEXGRID控件左上角的距离RowPositionArray/Long设置某个网格行的位置RowsLong返回网格的行的总数或者或BAND的行的总数RowSelLong设置/返回一个范围的单元的起始行RowSizingModeEnum设置/返回一个值表明对一行的设置是影响网格的所有行还是只影响被调整的行ScrollBarsEnum设置/返回一个值表明MSHFLEXGRID控件的滚动条类型ScrollTrackBoolean设置/返回一个值表明网格内容是在用户移动滚动条时随着改变还是滚动结束后改变SelectionModeEnum设置/返回一个值表明MFHFLEXGRID控件允许的选择类型.SortEnum根据某些村准备设置排序的值TextString设置/返回一个单元或一个范围内单元的文本内容TextArrayarray/string不改变ROW,COL属性,设置/返回任意单元的文本内容TextMatrixarray/string设置/返回某个选定行,列的单元的文本内容TextStyleEnum设置/返回网格通常单元的3D文本风格TextStyleBandArray/Enum设置/返回网格BAND的3D文本风格TextStyleFixedEnum设置/返回网格各固定行的3D文本风格TextStyleHeaderArray/Enum设置/返回网格各头部的3D文本风格TopRowLong设置/返回网格最上面的可见行VersionInteger返回正在使用MSHFLEXGRID控件的版本WordWrapBoolean定义当到达单元的边界时,网格的单元的内容是否WRAP===================================================2) MSHFLEXGRID控件的重要方法方法说明AddItem向网格中加入一新行Clear清除网格中的内容ClearStructure清除网格的结构(映射信息)CollapseAll折叠网格的某个特定的所有行ExpandAll展开网格的某个特定的所有行RemoveItem从网格中清除一行方法AddItem和RemoveItem可以用来向网格中加入或删除行(BANDS).如果折叠或展开某个BAND的所有行,则可以使用COLLAPSEALL和EXPAANDALL方法.方法CLEAR可以清除网格中的内容,但不影响网格的行,列数,如果要清除网格的结构,包括顺序及网格各列的名称,应当使用ClearStructure方法.===================================================3) MSHFELXGRID的控件的主要事件Collapse用户折叠了网格的一行Compare当SORT属性被设置为CUSTOMERSORT,允许用户定义排序过程EnterCell当一个新的单元成为当前活动单元时(获得)Expand用户展开了网格的一行LeaveCell当一个新单元成为当前活动单元前(离开)RowColChange当一个新单元成为当前活动单元时Scroll用户用键盘,滚动条滚动网格的内容或网格的内容由程序滚动时SelChangeEvent一个新范围内的单元被选中EnterCell, LeaveCell, RowColChange事件相互联系,因为它们都在当一个新单元成为当前活动单元时被激发,实际上这些事件的顺序是:LeaveCell, EnterCell然后是RowColChange.Collapse和Expand事件在用户折叠或者展开网格的一行(BAND)时被激发.属性ROW和COL可以用来确定用户折叠或者展开的单元.当SORT属性设置为9时,对网格的每两行发生一次COMPARE事件,用户排序方法使你可以选择按照午任意列或单元对行排序.注意,使用这种排序方式的速度会慢于BUILD-IN排序.不论采用何种方式,只要对网格进行滚动时,SCROLL事件就会被激发.当SCROLLTRACK属性设置为TRUE时,如果用户用鼠标拖动或滚动时,该事件也被激发,如果SCROLLTRACK属性被设置为FALSE时,SCROLL事件只在拖动结束后激发一次.当选择单元格变化时, SelChangeEvent事件会被激发,对选择的单元范围的改变,可以通过用户操作或程序代码来实现.。

相关文档
最新文档