当dbgrid的数据源进行filter过滤时,显示的记录减少,但dbgrid的滚动条却没有变化,如何让滚动条自动刷新呢??不知道有没有高手遇到这样的问题

解决方案 »

  1.   

    你试下对dbgrid连接的表刷新,感觉应该可以影响到dbgrid,如果不行,那就刷新dbgrid吧
      

  2.   

    试试
    sendmessage(dbgrid.handle,WM_VSCROLL,SB_BOTTOM,0)
      

  3.   

    刷新连接Grid的数据表应该可以的
    用Requery试试
      

  4.   

    Filter之後, 不可能滚动条不動!
    或者你將它對應的Dataset.DisableConstrol設成了True試試1. xxx1.DisableControls:=False;2.filter之後
    xxx.Close;
    xxx.Open;
      

  5.   

    或者DBGrid1.Enable:=False;
    或者DBGrid1.ReadOnly:=True;
      

  6.   

    滚动条拖动部分应该根据数据的多少而改变大小,可是没有变化。举例:当filter之后结果集显示不到一页时,滚动条依然存在,应该消失才对。
      

  7.   

    这里可以用书签的方法吗,试一下;
    用refresh或updata试试;
    close open 不过这个不好,
    但没有解决的情况下也可以用
      

  8.   

    没用,dbgrid就那德行。
    换个别的控件,那大大名鼎鼎的 devdbgrid 吧好象,名字忘了,就不错。
      

  9.   

    DBGrid1.Refresh;DBGrid1.Update;  <<<<===不信不行