验项目的时候,师父看我的运行效果,发现每页显示条数这里不能修改,及时是在1到10以内,也会显示,不可以,如图:
图上,选中了“3”,按任意1到10 以内的数字,都会弹出这个框,找了源代码,没有发现任何异样,军星帮我看了,也没有发现,但他很是不服气,让我把代码发给他,他又仔仔细细地看了一遍,发现了问题,真是个细心的男孩儿,厉害,真的,这种精神太值得我学习了。
其实我只是少一行代码而已,但这一行代码是至关重要的,受教了,细节的重要性,细心的魅力所在。
二、知识点总结:
显示当前记录页数据有两种方法
- 使用 DataGrid 控件。DataGrid 控件会显示记录集中的全部数据,所以不直接将分页的记录集绑定到 DataGrid 控件。可将当前记录页中的巨鹿复制到一个新的记录集中再将其绑定到 DataGrid 控件,便可显示当前记录页数据。
- 使用 MSFlexGrid 控件,MSFlexGrid 控件可在设计时将其绑定到Data控件。在运行时,则可通过设置控件的TextMatrix 属性来显示数据。
记录集的分页特性
- PageSize 属性:设置或返回一个记录页中可包含的记录个数,其默认值为10。
- PageCount 属性:返回一个记录集的记录页数
- AbsolutePage 属性:设置或返回当前记录页编号
DataGrid 控件使用代表记录的行和列来显示数据,并允许对数据进行修改,对数据的修改可自动保存。使用时,可将DataGrid 控件的DataSource 属性设置为ADO Data 控件或RecordSet对象完成数据绑定。
DataGrid 控件为外部 Active X控件,使用前需将其添加到工程中,其部件名称为 Microsoft DataGrid Control 6.0(OLEDB)
需要编写代码实现以下主要功能:
- 在窗体加载时建立数据库连接,并创建 RecordSet 对象,同时设置默认记录页大小,并显示第1个记录页数据
- 在修改记录页大小时,重新分页并显示第1个记录页数据
- 在单击 前一页,后一页按钮时,改变当前记录页,并显示数据。
理解:
对于代码,起初是不理解的,但不断地看注解,就有了自己的理解,可能本身觉得数据库就比较难,所以心里就告诉自己,“你看不懂,你看不懂”,哈哈,像魔咒一样,但慢慢地,一点点地啃,试着更改代码,就明白了,原来是这样,下面这个图,更改了页数,去看效果,就更加明白了。而且还觉得蛮有意思的。
提问:
DataGrid 该控件
特点:分页后的记录集对象不能直接绑定到DataGrid控件,因为DataGrid控件会将记录集中所有记录自动填充到控件中,这样就不能实现分页效果。 代码中有标注!!!!!
在看书的时候,这个部分是有疑问的,看了看代码,感觉这个位置就是这部分知识点的解说,向大家请教一下,看我想的对不对?