'*************************************************************************
'**函 数 名:NextPage
'**输    入:nPageSize(Long) -每页的大小,rsData--记录集,dgDataBase——数据窗口
'**输    出:无
'**功能描述:datagrid向后翻页
'**全局变量:
'**调用模块:
'**作    者:卢明
'**日    期:2004-11-04 16:14:03
'**修 改 人:
'**日    期:
'**版    本:V1.0.0
'*************************************************************************
Private Sub NextPage(intPageSize As Integer, rsData As Recordset, dgDataBase As DataGrid)    Dim lPageCount As Long
    '记录集中的字段数
    Dim lCount As Long
    Dim intCnt     As Integer
    '每页显示的纪录
    rsData.PageSize = intPageSize
    '当前页页数
    lPageCount = rsData.AbsolutePage
    If (lPageCount + 1) <= rsData.PageCount Then
        rsData.AbsolutePage = rsData.AbsolutePage + 1
    End If
    '定义另一个记录集
    Dim objrs As New ADODB.Recordset
    '添加字段名称
    For lCount = 0 To rsData.Fields.Count - 1
        objrs.Fields.Append rsData.Fields(lCount).name, adVarChar, rsData.Fields(lCount).DefinedSize
    Next
    '打开记录集
    objrs.Open
    '将指定记录数循环添加到objrs中
    For lCount = 1 To intPageSize
        If Not (rsData.EOF Or rsData.BOF) Then
            For intCnt = 0 To rsData.Fields.Count - 1
                objrs.AddNew
                objrs.Fields(incnt).Value = rsData.Fields(intCnt).Value
                rsData.MoveNext
                Next
            Else
                GoTo L1
            End If
        Next
L1:
        '绑定
        Set dgDataBase.DataSource = objrs
End Sub这是我编写的一个函数,但是我在编译生成.exe文件时,总是说函数中的daDataBase变量没有DataSource属性,请问这是为什么呢?如何改正呢?

解决方案 »

  1.   

    你的代码中哪儿有daDataBase啊?
      

  2.   

    哦,不好意思,写错了,应该是函数中的那个参数dgDataBase
      

  3.   

    你的函数中就没用到过dgDataBase,你何必加上这个参数?
      

  4.   

    我当然用过了,ling242a()老大你没看清楚吧!最后一行:
            '绑定
            Set dgDataBase.DataSource = objrs
      

  5.   


      DataGrid型?
      它会有DataSource属性吗?
      

  6.   

    DataGrid是个控件呀,当然有DataSource属性啦!
      

  7.   

    你DataGrid控件中每一列有没有绑定对应的字段.
      

  8.   

    dgDataBase As DataGrid
    改为:
    dgDataBase As MSDataGridLib.DataGrid
    试试,我曾这样解决过这样的问题。^_^