ercent 3 总数的百分比 flexSTCount 4 行数 flexSTAverage 5 平均 flexSTMax 6 最大的 flexSTMin 7 最小的 flexSTStd 8 标准偏差 flexSTVar 9 方差 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ MousePointer、MouseIcon 鼠标指针的应用: 0=flexDefault 1=flexArrow 2=flexCross 3=flexIBeam 4=flexIcon 5=flexSize 6=flexSizeNESW 7=flexSizeNS 8=flexSizeNWSE 9=flexSizeEW 10=flexUpArrow 11=flexHourglass 12=flexNoDrop 13=flexArrowHourGlass 14=flexArrowQuestion 15=flexSizeAll 50=flexPointerCopy ''''(&H32) ''''拖动带拷贝 51=flexPointerMove ''''(&H33) ''''拖动 52=flexSizeHorz ''''(&H34) ''''左右调整 53=flexSizeVert ''''(&H35) ''''上下调整 54=flexHand ''''(&H36) 手型 99=flexCustom ''''自定义 Const MA = "50,51,52,53,54" Dim xy As Integer xy = Val(Text1.Text) If xy > 15 And xy <> 99 And InStr(MA, xy) = 0 Then xy = 15 VSG1.MousePointer = xy If xy = 99 Then VSG1.MouseIcon = LoadPicture("C:\icon\Icon.ico") End If ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 单击列头将列互相拖动调换: 方法一: VSG1.ExplorerBar = flexExMove ''''2 这是最简单的方法了 注意这个属性在VB属性表中只设置了0、1、2、3、5、7、8种常数值 ExplorerBar 属性(value=0|1|2|3|5|7|8): 0-flexExNone:默认,单击列头选择整列,单击行头选择整行 1-flexExSort:单击列头可正反排序该列,单击行头选择整行 2-flexExMove:单击列头可交换列顺序,单击行头选择整行 3-flexExSortAndMove:具有 1 和 2 的功能 4:单击列头可正反排序该列并在列头显示相应箭头,单击行头选择整行 5-flexExSortShow:好像与 4 相同也 6:具有 2 和 4 的功能 7-flexExSortShowAndMove:好像与 6 相同也 8-flexExMoveRows:单击列头选择整列,可拖动行 9:单击列头可正反排序该列,可拖动行 10:可拖动行与列 11:可排序列及拖动行列 12:可排序列并在列头显示相应箭头,还可拖动行 13:同 12。 14:除 12 功能外,可拖动列 15:同 14。 方法二: Private Sub VSG1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim r%, c% r = VSG1.MouseRow c = VSG1.MouseCol If r = 0 And c > 0 Then VSG1.Tag = c VSG1.Cell(flexcpBackColor, 0, c) = vbYellow VSG1.MousePointer = flexPointerMove End If End Sub Private Sub VSG1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Len(VSG1.Tag) Then Dim r%, c%, p% r = VSG1.MouseRow c = VSG1.MouseCol If r = 0 And c > 0 Then p = flexPointerMove If VSG1.MousePointer <> p Then VSG1.MousePointer = p End If End Sub Private Sub VSG1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Len(VSG1.Tag) Then Dim r%, c%, target% target = VSG1.Tag VSG1.Cell(flexcpBackColor, 0, target) = 0 VSG1.Tag = "" VSG1.MousePointer = 0 r = VSG1.MouseRow c = VSG1.MouseCol If r = 0 And c > 0 And c <> target Then VSG1.ColPosition(target) = c End If End If End Sub ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ VSFlexString控件属性一览表 CaseSensitive ??? Error 失败时取得错误信息 Index 索引 MatchCount 取得与检索条件相一致的字符串数量 MatchIndex 设定与检索条件相一致的字符串的索引 MatchLength 取得与检索条件相一致的字符串长度 MatchStart 取得与检索条件相一致的字符串起始位置 MatchString 取得与检索条件相一致的字符串 Name Object Parent Pattern 设定检索条件 Replace 设定置换字符串 Soundex 取得代表当前检索字符的声音代码 Tag TagCount 取得与检索条件相一致的标签数量 TagIndex 在多个标签情况下,设定/取得与检索条件相一致的标签索引 TagLength 取得与检索条件相一致的标签长度 TagStart 取得与检索条件相一致的标签起始位置 TagString 取得与检索条件相一致的标签的字符串 Text 设定成为检索对象 Version 取得FlexString的版本号 --------------------------------------------------------
MSFlexGrid与VSFlexGrid的单元格合并例子:
Private Sub Form_Load() Dim i As Long With fg .WordWrap = True .Rows = 6 .Cols = 6 .FixedRows = 2 .FixedCols = 0 .ColWidth(0) = 1500 .RowHeight(0) = 300 .RowHeight(1) = 300 .TextMatrix(1, 1) = "进货" .TextMatrix(1, 2) = "销售" .TextMatrix(1, 3) = "退货" .TextMatrix(1, 4) = "结存"
For i = 1 To .Rows - 1 .RowHeight(i) = 300 ''''设置行高 Next i For i = 0 To 1 .TextMatrix(i, 0) = "上月" & vbCrLf & "结存数量" ''''//换行 .FixedAlignment(0) = 4 Next i For i = 0 To 1 .TextMatrix(i, 5) = "月末结存" .FixedAlignment(5) = 4 Next i For i = 1 To 4 .TextMatrix(0, i) = "本月进销存数量" .ColAlignment(i) = 4 Next i
.MergeCells = flexMergeFree '''' .MergeCells = flexMergeFixedOnly .MergeCol(0) = True .MergeRow(0) = True .MergeCol(5) = True End With End Sub
请问:如何使用 VSFlexGrid Pro 分级显示和存取数据库中的数据。类似于《让 TreeView 支持无限级分类》帖子中所介绍的使用树形控件显示和存取数据库的数据。
Dim cn as New ADODB.Recordset Dim rs As New ADODB.Recordset Dim lngY As Long Dim intT As Integer cn.open "............" rs.Open "select 系统编号 from test order by 系统编号", cn With VSFlexGrid1 Set .DataSou