MSFlexGrid控件怎样使用选定多行这个功能是正确的,如何取得多行数据,请高手举例指教

解决方案 »

  1.   

    '=====把用户所选择的列表中的记录放进数组(假设你的MSFlexGrid控件名称为flexTzs)====
                If flexTzs.Row < flexTzs.RowSel Then '如果是从上往下选(选多行)
                     intStNo = flexTzs.Row  'intStNo代表开始行号
                     intEndNo = flexTzs.RowSel 'intEndNo代表结束的行号
                End If
                If flexTzs.Row > flexTzs.RowSel Then '如果是从下往上选(选多行)
                     intStNo = flexTzs.RowSel
                     intEndNo = flexTzs.Row
                End If
                If flexTzs.Row = flexTzs.RowSel Then '如果是只选一行
                     intStNo = flexTzs.Row
                     intEndNo = intStNo
                End If
                intRowNo = intEndNo - intStNo
                '-----放进数组,假设数组名为arrTemp()----
                For i = 1 To intRowNo + 1 
                     For j = 1 To 6 '从第一列到第六列读到数组中(根据需要可以改)
                         arrTemp(i, j) = flexTzs.TextMatrix(intStNo, j)
                     Next j
                     intStNo = intStNo + 1
                 Next i
    不知道对不对哦
      

  2.   

    示例比较麻烦呀。你没有控件参考手册吗?没有话去下载来看看。选定后的行和例用 RowSel 和ColSel属性,可用循环读出.textmtrix(rowindex, colindex)这样会慢点。如果你是要处理数据库的话这样做没有什么意义,还不如直接用SQL处理数据库后用 Set MSFlexGrid.DataSource = Rst