第一个问题解决办法(已经得到记录集rst):
i = 0
Do While Not rst.EOF                      'rst记录集
i = i + 1                                 'i中保存记录个数
rst.MoveNext
Loop
MSFlexGrid1.Rows = i + 1                 '动态设置MSFlexGrid的行和列
MSFlexGrid1.Cols = rst.Fields.Count + 1
MSFlexGrid1.Row = 0
For i = 0 To rst.Fields.Count - 1
MSFlexGrid1.Col = i + 1
MSFlexGrid1.Text = rst.Fields.Item(i).Name
Next                                     '设置第一行的标题,用域名填充i = 0
Set rst = mycommand.Execute()            'mycommand命令
Do While Not rst.EOF
  i = i + 1
  MSFlexGrid1.Row = i                    '确定行
  For j = 0 To rst.Fields.Count - 1
  MSFlexGrid1.Col = j + 1
  MSFlexGrid1.Text = rst(j)              '添充所有的列
  Next
rst.MoveNextLoop                                     '这个循环用来填充MSFlexGrid的内容

解决方案 »

  1.   

    建议使用ListVIew控件,它的界面比较好看,而且对于每一个ListItem, 可以设置一个唯一键来标识,这样查找很方便,对于添加记录时,只要把添加的记录加个末尾就可以了,如果是修改,可以找到这条修改的记录,然后再更新,如果要删除,把该ListItem Remove掉就可以了
      

  2.   

    我想问的是直接用Datasource行不行?
    直接写如的方法我已经知道了.
    另外就是添加,删除,修改rst后. 怎样在Msflexgrid上显示出来.  难道还要再重写一遍?
    还有就是移动记录, 在MsFlexGrid怎样有表示出来?即它有没有光标?能上下移动?