我在窗体中添加了两个MSHFlexGrid控件,通过点击第一个MSHFlexGrid 中的一行记录来自动 将该行记录添加到第二个MSHFlexGrid中,并同时将第一个MSHFlexGrid点击的那行数据删除,当我点击第二个MSHFlexGrid时也可实现以上功能
我先通过adodc1.recordset!"字段值"来向第一个MSHFlexGrid添加原始数据
我的问题是:我在第一个MSHFlexGrid中可以通过点击向第二个MSHFlexGrid中添加数据,但当我点击第二个MSHFlexGrid时则不能向第一个MSHFlexGrid添加记录,虽然点击的那行可删除,怎样才能实现添加亡注:我用的方法是AddItem与RemoveItem方法,两个控件中的代码是相同的,只是相应的控件名作了必要的删除

解决方案 »

  1.   

    试试:Grid1.Additem ""
          Grid1.Textmatrix(Grid1.Rows-1,X)=Grid2.Text
    X指你表格中的列
      

  2.   

    把两个MSHFlexGrid的点击代码都帖出来 看看
      

  3.   

    Private Sub Form_Load()
    Dim i As Integer
    MSHFlexGrid1.Cols = 3
    MSHFlexGrid2.Cols = 3
    For i = 0 To 2
    MSHFlexGrid1.TextArray(i) = "n^" & i + 1
    MSHFlexGrid2.TextArray(i) = "n^" & i + 1
    Next
    For i = 1 To 20
    MSHFlexGrid1.AddItem i & vbTab & i ^ 2 & vbTab & i ^ 3
    Next
    MSHFlexGrid1.RemoveItem 1
    End SubPrivate Sub MSHFlexGrid1_Click()
    Dim i As Integer, x() As String
    ReDim x(MSHFlexGrid1.Cols - 1)
    For i = 0 To MSHFlexGrid1.Cols - 1
    x(i) = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.MouseRow, i)
    Next
    MSHFlexGrid2.AddItem Join(x, vbTab)
    MSHFlexGrid1.RemoveItem MSHFlexGrid1.MouseRow
    End Sub
    Private Sub MSHFlexGrid2_Click()
    Dim i As Integer, x() As String
    ReDim x(MSHFlexGrid2.Cols - 1)
    For i = 0 To MSHFlexGrid2.Cols - 1
    x(i) = MSHFlexGrid1.TextMatrix(MSHFlexGrid2.MouseRow, i)
    Next
    MSHFlexGrid1.AddItem Join(x, vbTab)
    MSHFlexGrid2.RemoveItem MSHFlexGrid2.MouseRow
    End Sub
      

  4.   

    如果用Grid1.AddItem ""不行的话,试着用Grid1.Rows=Grid.Rows+1,
    然后再用Grid1.Textmatrix(Grid.Rows-1,x)=Grid2.Text