高手何在? 关于dbgride的SCROLLBAR的问题

gg137zeus 2004-09-21 12:28:12
我横向拖动dbgride的SCROLLBAR时,希望里面内容也跟着同步变化。
我也写了个捕获消息的函数,反正实现不了这个功能,希望大家赐教

procedure TMainForm.ClassWndProc4(var Msg: TMessage);
var
ScrollInfo: TScrollInfo;

begin
oldproc4(msg); // 先处理默认的

if Msg.Msg=WM_HSCROLL then begin
if (Msg.WParamLo= SB_THUMBTRACK) or(Msg.WParamLo=SB_THUMBPOSITION) then
begin
ScrollInfo.cbSize := sizeOf(ScrollInfo); // 准备参数
ScrollInfo.fMask := SIF_ALL;
GetScrollInfo(dbgrid1.Handle, SB_HORZ, ScrollInfo ); // 取当前的滚动条信息

if ScrollInfo.nPos<Msg.WParamHi then begin
SendMessage(dbgrid1.Handle,Msg.Msg,SB_LINERIGHT ,0);
ScrollInfo.nPos:=ScrollInfo.nTrackPos;
SetScrollPos(dbgrid1.Handle, SB_HORZ,Msg.WParamHi, True);
end
else if ScrollInfo.nPos>Msg.WParamHi then begin

SendMessage(dbgrid1.Handle,Msg.Msg,SB_LINELEFT ,0);
ScrollInfo.nPos:=ScrollInfo.nTrackPos;
SetScrollPos(dbgrid1.Handle, SB_HORZ,Msg.WParamHi, true);
end
end;
end;


end;
...全文
133 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
cqm2099 2004-09-21
  • 打赏
  • 举报
回复
帮你UP吧
Lwen 2004-09-21
  • 打赏
  • 举报
回复
dbgrid不是有自带滚动条吗??
gg137zeus 2004-09-21
  • 打赏
  • 举报
回复
回答阿,救救我,我要被炒了

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧