我用vb写的程序,datagrid分页显示,最后一页不知道怎么处理?

jayaigg jayaigg 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我用vb写的程序,datagrid分页显示,最后一页不知道怎么处理? 当记录数不是nPageSize (每页显示的纪录)的整数倍的时候,就出现错误了,该怎么写语句修复啊??热心的人帮帮
...全文

相关推荐

vb中datagrid控件的详细使用方法

vb中datagrid控件的详细使用方法,拿出来给大家看看!!!!是学习datagrid控件的好助手

gaowan为了梦想

WPF中的DataGrid、Button、ComboBox等样式+DataGrid分页控件

图片是在XP下截的,所以看不出效果,在Win7下效果好点.其中的DataGrid分页绑定控件方法只要传入被绑定的DataGrid对象和数据源就可以绑定了,操作简单.

八万英尺

DataGrid分页

VB DataGrid分页 请看: 数据库:test2000.mdb 表:numbers 字段:Id(自动编号),anumber(数字) 因为DataGrid控件我们采用直接绑定记录集来显示数据.所以分页处理我们采用了间接的办法,定义另一个记录集objrs,将分页后的记录集付给objrs.然后绑定DataGrid ''效果还不错 , 我加了详细地注释,像pagesize, AbsolutePage的用法可参考msdn VB中新建工程,form中添加DataGrid控件,按钮cmdPrevious和cmdNext,文本框txtPage ''引用microsoft active data object 2.x object library Option Explicit Dim conn As ADODB.Connection Dim lCurrentPage As Long Private Sub cmdNext_Click() lCurrentPage = lCurrentPage + 1 Call Loadcontrol(lCurrentPage) End Sub Private Sub cmdPrevious_Click() If lCurrentPage > 1 Then lCurrentPage = lCurrentPage - 1 Call Loadcontrol(lCurrentPage) End If End Sub Private Sub Form_Load() Set conn = New ADODB.Connection conn.CursorLocation = adUseClient conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test2000.mdb;" lCurrentPage = 1 Call Loadcontrol(lCurrentPage) End Sub Private Sub Loadcontrol(lPage As Long) Dim adoPrimaryRS As ADODB.Recordset Dim lPageCount As Long Dim nPageSize As Integer Dim lCount As Long ''每页显示的纪录 nPageSize = 10 Set adoPrimaryRS = New ADODB.Recordset adoPrimaryRS.Open "select * from numbers", conn, adOpenStatic, adLockOptimistic adoPrimaryRS.PageSize = nPageSize ''页数 lPageCount = adoPrimaryRS.PageCount If lCurrentPage > lPageCount Then lCurrentPage = lPageCount End If adoPrimaryRS.AbsolutePage = lCurrentPage ''定义另一个记录集 Dim objrs As New ADODB.Recordset ''添加字段名称 For lCount = 0 To adoPrimaryRS.Fields.Count - 1 objrs.Fields.Append adoPrimaryRS.Fields(lCount).Name, adVarChar, adoPrimaryRS.Fields(lCount).DefinedSize Next ''打开记录集 objrs.Open ''将指定记录数循环添加到objrs中 For lCount = 1 To nPageSize objrs.AddNew objrs!id = adoPrimaryRS!id objrs!anumber = adoPrimaryRS!anumber adoPrimaryRS.MoveNext Next ''绑定 Set DataGrid1.DataSource = objrs ''在文本框显示页数 txtPage = lPage & "/" & adoPrimaryRS.PageCount End Sub Private Sub Form_Unload(Cancel As Integer) If Not conn Is Nothing Then conn.Close End If Set conn = Nothing End Sub ‘文本框中输入页数,回车跳转到指定位置 Private Sub txtPage_KeyDown(KeyCode As Integer, Shift As Integer) lCurrentPage = Val(txtPage.Text) Call Loadcontrol(lCurrentPage) End Sub

moyan8866

VB中DataGrid_控件的使用秘集

大家伙,我在这里给大家分享一下最近我在VB中使用的DataGrid控件的部分用法,希望大家下载分享!有更好的还望大家给我推荐,谢谢!

永乐阿德

VB 用datagrid显示数据库信息

vb 用datagrid和adodc 关联显示数据库内容

ziyoulongyu
评论 9
收藏 已收藏
分享
返回顶部