如何控制DBGrid的滚动条
在DBGrid控件右侧的滚动条运行时始终在中间位置或顶端或底端,不能根据实际情况移动,如何正确配置滚动条的范围、以及在单击或拖动滑块时如何正确设置滚动条的位置?
void _fastcall TForm1::GridWindowProc(TMessage &Message)
{
if (Message.Msg == WM_VSCROLL)
{
int nPos = GetScrollPos((HWND)Message.LParam, SB_VERT);
if (Message.WParam == SB_LINEUP)
{
t->DataSource->DataSet->Prior();
SetScrollPos((HWND)Message.LParam, SB_VERT, nPos - 1, TRUE);
Message.Msg = 0;
}
if (Message.WParam == SB_LINEDOWN)
{
t->DataSource->DataSet->Next();
SetScrollPos((HWND)Message.LParam, SB_VERT, nPos + 1, TRUE);
Message.Msg = 0;
}
}
OldGridProc(Message);
}
我用上述的方法尝试设置,结果没有任何反应,应该如何设置啊?还有应该在哪里设置滚动条的Range和nPage啊?