各位大侠:如何定义一个按钮,按动时,调用下一个记录,不用自带的数据库控件,

解决方案 »

  1.   

    用ADO吧,菜单"工程/引用/Microsoft Activex Data Objects Library 2.0",后面为版本号
    Dim rs As New ADODB.Recordsetrs.Open "select * from tablename", cn, adOpenDynamic, adLockPessimisticrs.MoveFirst
    rs.MovePrevious
    rs.MoveNext
    rs.MoveLast
      

  2.   

    建议你看看VB自带的例子,上有很多的说明:
    sub cmd_Prev_click()
        sc.moveP....
        if sc.bof then
           sc.movenext
        endif
    end subsub cmd_Next_click()
        sc.moveNext
        if sc.bof then
           sc.moveP...
        endif
    end sub
      

  3.   

    给一个我自己的类库操作给你啊
    addnew delete insert First prev next last 
    全给你了Private Sub Class_Initialize()
         gConnectionString = "DBQ=" & App.Path & "\test.mdb;Driver={microsoft Access driver (*.mdb)}"
         DataSc.gConn.ConnectionString = gConnectionString
         DataSc.gConn.Open
    End SubPrivate Sub Class_Terminate()
        DataSc.gConn.Close
    End Sub
    '******************************
    '
    ' 模块CLs的方法
    ' 检索一个表的方法
    '   FillGrid
    '******************************Public Function Fillgrid(Optional ss As String) As Object
        Dim strSql As String
        Dim rs As ADODB.Recordset
        strSql = "select * from Student"
        
        Set rs = New ADODB.Recordset
        rs.Open strSql, DataSc.gConn, adOpenForwardOnly, adLockReadOnly
        Set Fillgrid = rs
        
    End Function'****************************
    '模块Cls的方法
    '检索一个表的方法
    '  Del方法
    '
    '****************************
    Public Function Del(strdel As String)
        Dim strSql As String
        strSql = "Delete From Student where 姓名='" + strdel + "'"
        DataSc.gConn.Execute strSql
        
    End FunctionPublic Function add(xm As String, xb As String, xbb As String, bj As String)
        Dim strSql As String
        strSql = "insert into  Student(姓名,性别,系别,班级)values('" & Trim(frmMain.txtXm) & "','" & Trim(frmMain.txtXb) & "','" & Trim(frmMain.txtXbb) & "','" & Trim(frmMain.txtBj) & "')"
       DataSc.gConn.Execute strSqlEnd Function Select Case Button.Key
            Case "First"
                If Not rs.BOF Then rs.MoveFirst
            Case "Prev"
                If Not rs.BOF Then rs.MovePrevious
                
            Case "Next"
                If Not rs.EOF Then rs.MoveNext
            Case "Last"
                If Not rs.EOF Then rs.MoveLast
            Case "New"
                Sclsc.add Trim(txtXm.Text), Trim(txtXb.Text), Trim(txtXbb.Text), Trim(txtBj.Text)
                 Set rs = Sclsc.Fillgrid
                Set DataGrid1.DataSource = rs
            Case "Delete"
              Sclsc.Del Trim(txtXm.Text)
               Set rs = Sclsc.Fillgrid
               Set DataGrid1.DataSource = rs
            Case "Close"
                Unload Me
                
            
        End Select
      

  4.   

    Dim cnn As ADODB.Connection
    Dim rs As ADODB.RecordsetPrivate Sub Form_Load()
      Set cnn = New ADODB.Connection
      Set rs = New ADODB.Recordset
      cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb;Persist Security Info=False"
      cnn.Open
      cnn.CursorLocation = adUseClient
      rs.Open "select * from 用户表", cnn, adOpenKeyset, adLockOptimistic
      Set Me.DataGrid1.DataSource = rs
    End Sub
      

  5.   

    用ADO就能很快实现,拜托你多看看MSDN
      

  6.   

    Dim cn As New ADODB.Connection
    Dim rs As New ADODB.RecordsetPrivate Sub Command1_Click() 
    If Not rs.EOF Then
    Text1 = rs.Fields(0)
    rs.MoveNext
    End If
    End SubPrivate Sub Form_Load()
    cn.ConnectionString = "provider=microsoft.jet.oledb.4.0;data source=" & App.Path & "\book.mdb;"
    cn.Open
    rs.Open "select * from test", cn, adOpenDynamic, adLockOptimistic, adCmdText
    End Sub我在上面是用文本显示的数据库中内容,其中rs.fields()括号中是第几个字段,是从0开始的,
    如有其它疑问再讨论研究。(以上是在VB6+ACCESS2000中实现的)