Delphi 有没有办法确定滚动条在TDBGrid上是否可见

Delphi 有没有办法确定滚动条在TDBGrid上是否可见,delphi,vcl,delphi-10.1-berlin,tdbgrid,Delphi,Vcl,Delphi 10.1 Berlin,Tdbgrid,我想在TDBGrid的右下角显示一些内容,但不想覆盖滚动条 是否有一种很好的方法来确定滚动条是否可见?(以及它们的大小)最好的方法可能是使用属性,该属性以自己的坐标给出控件的客户端矩形(这意味着左侧和顶部始终为0)。“客户端矩形”是控件的一部分,它不是边框和滚动条 为了进行比较,该属性是父窗口坐标系中窗口的完整矩形 比如说, 及 pnSnowman.SetBounds( DBGrid1.Left+DBGrid1.ClientWidth-pnSnowman.Width-8, DBGrid1.To

我想在
TDBGrid
的右下角显示一些内容,但不想覆盖滚动条


是否有一种很好的方法来确定滚动条是否可见?(以及它们的大小)

最好的方法可能是使用属性,该属性以自己的坐标给出控件的客户端矩形(这意味着
左侧
顶部
始终为
0
)。“客户端矩形”是控件的一部分,它不是边框和滚动条

为了进行比较,该属性是父窗口坐标系中窗口的完整矩形

比如说,

pnSnowman.SetBounds(
DBGrid1.Left+DBGrid1.ClientWidth-pnSnowman.Width-8,
DBGrid1.Top+DBGrid1.ClientHeight-pnSnowman.Height-8,
雪人,宽度,
雪人,身高
);
导致


您可以简单地使用
ClientRect
属性,该属性是滚动条未占用的rect。与
BoundsRect
属性进行比较。@AndreasRejbrand Perfect,thanksThanks,一个很好的解释和代码示例。