求教!(200分)

  • 主题发起人 主题发起人 lghui
  • 开始时间 开始时间
L

lghui

Unregistered / Unconfirmed
GUEST, unregistred user!
一、有数据
1 张三 数学 50
2 李四 数学 60
3 张三 语文 80
4 李四 语文 60
...
如何在DBGRID中显示如下格式:
1 张三 数学 50
语文 80
2 李四 数学 60
语文 60

二、如何在DBGRID中实现类似网页的分屏显示数据?
如:在DBGRID中只显示20条数据,按“下页”后显示另外20条数据,按“上页”返回上
面的20条数据。别告诉我用MOVEBY的方法。
 
用DbGrid好象没什么好办法吧。最好改用AlignStringGrid之类的控件,就可以用代码达到
这些目的了。

 
帮你出出点子 :
一,好像不行。
二,可以用ADODataSet1.Recordset.PageCount , PageSize 之类的。
不过我没有试过, 你去研究研究。
 
为什么不横着显示,可以在查询中用页码参数控制。
竖显要麻烦了。
 
呵呵,对啊横着吧
 
to Puma Wang:
用dataset和query不行吗?

to jsxjd:为什么不横着显示...
什么意思?

本人只想对这两个问题进行讨论,并不急用。(没有做不到的,只有想不到的)
 
姓名 数学 语文
张三 50 60
李四 60 70
... ... ..
 
使用 DBCtrlGrid 控件~~~~~你可以在上面放 DBEdit 或 DBLabel 来制作你所需要的效果~
 
一、DBGrid很难完成,使用StringGrid,自己去填充数据和控制,或者到网上找点其他的控件
二、DBGrid也很难搞定,这个使用StringGrid,也可以实现,或者如果你使用的Mysql,
可以指定从第几条记录开始查找,第一次'Select * from table1 limit 0,20'
第二次'select * from table1 limit 20,20'
 
自己作个控件-----
1。因为你不着急,
2。还可以练练手
 
1你使用这个控件直接连接数据源是不行的,你可以改造这个控件
2可以实现,
使用tadoquery.cacheSize:=20
而记录集的AbsolutePosition不断的增加,但是你需要将TADOQUERY的当前20个记录
用内存表存起来再显示。因为DBGRID是缓冲所有的
---------就是所你要改造
 
我也想知道答案
 
后退
顶部