公司订单管理系统运行大半年了,订单数据越来越多,加上每条数据显示的同时必须查询数个相应的变色条件,公司里的老爷机逐渐吃不消了,刷新一次数据得等上好一会。没办法,只好采用分页显示处理数据了。下面是用ado控件+VSFlexGrid的处理方式:
Adodc11.Recordset.PageSize = 每页显示数据量
Page = 1 '数据默认定位到第一页
Label10.Caption = "每页N条数据,一共 " & Adodc11.Recordset.PageCount & " 页," & "当前第 " & Page & " 页" '信息提示
Page = 1 '数据默认定位到第一页
Label10.Caption = "每页N条数据,一共 " & Adodc11.Recordset.PageCount & " 页," & "当前第 " & Page & " 页" '信息提示
VSFlexGrid2.Rows = 1
VSFlexGrid2.RowHeight(0) = 0 '初始化VSFlexGrid
Adodc11.Recordset.AbsolutePage = Page '默认第一页
Adodc11.Recordset.AbsolutePage = Page '默认第一页
For iPage = 1 To Adodc11.Recordset.PageSize '这里是在VSFlexGrid中循环显示数据
VSFlexGrid2.AddItem Row
If Adodc11.Recordset.Fields("订单号") <> "" Then VSFlexGrid2.TextMatrix(iPage, 1) = Adodc11.Recordset.Fields("订单号")
... ...
VSFlexGrid2.AddItem Row
If Adodc11.Recordset.Fields("订单号") <> "" Then VSFlexGrid2.TextMatrix(iPage, 1) = Adodc11.Recordset.Fields("订单号")
... ...
... ...
VSFlexGrid2.RowHeight(iPage) = 320 '定义VSFlexGrid行高
Adodc11.Recordset.MoveNext
If Adodc11.Recordset.EOF Then Exit For '显示完即刻跳出循环
VSFlexGrid2.RowHeight(iPage) = 320 '定义VSFlexGrid行高
Adodc11.Recordset.MoveNext
If Adodc11.Recordset.EOF Then Exit For '显示完即刻跳出循环
Next
网络上很多都是网页中的数据分页显示技巧,纯VB中的较少,希望这个处理方法对有需要的朋友有所帮助 ^_^