好象没问题吧?
不知你是在哪里加的Debug.Print rs.AbsolutePosition?
还是用ctrl-break中断后在即时窗口得到的记录号?

解决方案 »

  1.   

    我刚按你的要求试了一下,一点问题没有。
    但我用的是ADO、DATAGRID,应该不会有差别的吧。
      

  2.   

    默认的DBGrid第三行的rs.Absolutepositon就是1
    那是第二条记录,相对于第一条记录的位置可不就是1!!!
      

  3.   

    我从新发这个帖子:
    急:Data和DBGrid !!!我在用Data+DBGrid打开和显示Access数据库时,他们的记录指针总是联系不上,
    请教解决方法(DataMode=0 Bound)
    (VB5.0 + DAO 3.5+Win98)
    比如:Data1.Connect = "" 
    Data1.DatabaseName = pubmdbpath
    Data1.RecordSource = "tabFileInfo"
    Set db = OpenDatabase(pubmdbpath)
    Set rs = db.OpenRecordset("tabFileInfo", dbOpenDynaset)
    Set Data1.Recordset = rs当前记录为1
    点Data的右箭头(下一记录)时,看到DBGrid的箭头指向了第3行,而此时执行
    Debug.Pring rs.AbsolutePosition
    却仍等于1
    但如果当前记录为1时执行rs.MoveNext,rs.AbsolutePosition就可以等于2。
    后来又在DBGrid_Click()里加了
    DBGrid.Col = 0
    rs.FindFirst "ID=" + DBGrid.Text '第一项是ID号
    现在可以实现每点击两次DBGrid,然后再点击编辑时,可以正常编辑,但如果只点一次
    却编辑的是上一次的记录,而且再也得不到DBGrid_DblClick()事件了
    我想要实现的是
    用鼠标随便点击DBGrid中的一格,即可得到这个格所在行的全部内容,别的都已经实现
    就是搞不清为何要点击两次才能正确编辑,望高手帮忙。
      

  4.   

    RE:everyask(everyask)
    我是在程序里加的Debug.Print rs.AbsolutePosition?
      

  5.   


    Private Sub Data1_Reposition()
         Debug.Print rs.AbsolutePosition
    End Sub
    中试一下,看看能否返回正确的值