选中表中的某一行,便使其各字段的信息分别显示到几个text中。
主要是不知道这属于哪个事件?在事件中找不到能够返回行标的事件啊。这可该怎么提取信息啊?

解决方案 »

  1.   

    Private Sub MSHFlexGrid1_Click()
            Dim mRow As Long
            Dim I As Long
            
            mRow = MSHFlexGrid1.MouseRow
            For I = 0 To MSHFlexGrid1.Cols - 1
                Text1(I).Text = MSHFlexGrid1.TextMatrix(mRow, I)
            Next
    End Sub
      

  2.   

    我是这样写的
    Private Sub MSHFlexGrid1_Click()
        Dim mRow As Long
        Dim i As Long     
        mRow = MSHFlexGrid1.Row
      If MSHFlexGrid1.TextMatrix(mRow, 0) = "" Then
            Exit Sub
      End If
        For i = 0 To MSHFlexGrid1.Cols - 1
            Text1(i).Text = MSHFlexGrid1.TextMatrix(mRow, i)
        Next
    End Sub
      

  3.   

    Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
    text1.text=adodc1.recordset.fields("字段")
    text2.text=adodc1.recordset.fields("字段")
    ...
    ...
    ...End Sub
      

  4.   

    1:主要是不知道这属于哪个事件?
          点击某一行后产生   MSHFlexGrid1_Click()事件
          这时mshflexgrid的row属性就是点击的行号,你可以改变col的属性值,取出相应的字段值给text控件
    2:取值
          两种方法 a: 用TextMatrix属性,用行,列直接定位,就是前面的方法
                   b:直接用text属性,
                             For I = 0 To MSHFlexGrid1.Cols - 1
                                     MSHFlexGrid1.col=I'定位
                                     Text1(I).Text = MSHFlexGrid1.Text
                             Next
      

  5.   

    因该在datagrid1的rowsel事件中吧,版主说的是选中一行呀!
      

  6.   

    gj121:
    "因该在datagrid1的rowsel事件中吧,版主说的是选中一行呀!"
    datagrid1没有rowsel事件啊!我找不到啊。
    fuanwei:
    好像rowcolchange事件用起来不是很好。我试过这个方法,可是,你第一次选中某行时,该事件是不发生的,只有第二次选中其它行时,该事件才响应。