现在讲数据都在dbgrid里显示出来了,因为数据比较多,共有几十行,可视行却只有十行。不管将窗口怎样拉大,都不可能直接观察到所有的结果。初步考虑用dbgrid的scroll控制滚动栏的滚动,可是查遍了msdn,也没有发现如何控制?相关代码如下:
While Data1.Recordset.EOF = False
 ' 读出每行的五个数据,格式化,组成字符串
If K = DBGrid1.VisibleRows Then 'k值代表读取数据在可视行中的行数,visiblerows=10
  DBGrid1.Scroll 0, DBGrid1.VisibleRows 以可视行数向下滚动
  'DBGrid1.Refresh
  K = 0 '滚动完成后,重置k为零
End If奇怪的是,滚动代码根本就没起作用,每次都只能打印前10行。
请高手指正!
不考虑用别的数据控件,假定就用dbgrid控件

解决方案 »

  1.   

    http://www.softhouse.com.cn/html/200504/2005042210321300006789.html
      

  2.   

    楼上说的是鼠标滚动的解决问题,而实际上需要解决的问题是让dbgrid的可视行自动滚动,因为是打印输出,滚动应该交给dbgrid自己来进行。有解决方案吗?
      

  3.   

    不好意思,看错了
    dbgrid没试过,DataGrid到是可以的。你在DBGrid1.Scroll 0, DBGrid1.VisibleRows 这句设置一个断点,看有没有执行到这句
      

  4.   

    写到TIMER 事件中试试:  DBGrid1.Scroll 0, DBGrid1.VisibleRows