如何在TScrollBar控件的横向和纵向的ScrollBar移动时,扑获该操作的消息 我想在TScrollBar控件的横向和纵向的ScrollBar移动时,扑获该消息,实现TScrollBar内的另一个Image控件的自动刷新重新绘图, 请问通过什么方式?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TScrollBar 不是有一个 OnScroll 事件吗?这个不行吗? 没发现有个onScroll事件哦! 不知你指的是.... 很早以前我做过类似的一个东东,也有你说的问题,好像捕捉消息也不行。但我放的是paintbox,它有刷新的方法。image是系统来维护的刷新,如果你要自已来维护刷新,不如你也改为paintbox. 我已经自己搞定了! 我把代码贴出来 大家共享一下吧! :)主要是自己定义了一个从 TScrollBox继承的类,该类添加了鼠标消息的扑获,很easy的实现了! 呵呵:)不过还是感谢大家了哦! TScrollEvent = procedure(var Message: TWMHScroll) of object; TExtScrollBox = class(TScrollBox) private FOnHScroll, FOnVScroll: TScrollEvent; procedure WMHScroll(var Message: TWMHScroll); message WM_HSCROLL; procedure WMVScroll(var Message: TWMVScroll); message WM_VSCROLL; published property OnHScroll: TScrollEvent read FOnHScroll write FOnHScroll; property OnVScroll: TScrollEvent read FOnVScroll write FOnVScroll; end;implementationprocedure TExtScrollBox.WMHScroll(var Message: TWMHScroll);begin if Message.ScrollCode = sb_ThumbTrack then HorzScrollBar.Position := Message.Pos; if Assigned(FOnHScroll) then FOnHScroll(Message); inheritedend;procedure TExtScrollBox.WMVScroll(var Message: TWMVScroll);begin if Message.ScrollCode = sb_ThumbTrack then VertScrollBar.Position := Message.Pos; if Assigned(FOnVScroll) then FOnVScroll(Message); inheritedend; 三层数据更新问题 delphi 新手上路怎么学习delphi里面如此之多的控件,还里控件里的属性 我的软件是通过4567端口连接到服务器里. 可我那边客户是通过80端口代理上网的. 没有把4567开了.有没有软件能把80端口映影成4567端口 socket高手请进! 打开窗口报错?! 这个语句怎么写? 在线等待:请问用table控制dbf数据表时,需要向数据表中插入一条记录,为什么数据总是跑到最后一条 急招delphi软件工程师 工作地点哈尔滨 怎样动态改变sql Delphi初学者看什么书? 一个小问题,看看吧 TDataSource组件的onDataChange事件是什么用途的
但我放的是paintbox,它有刷新的方法。image是系统来维护的刷新,如果你要自已来维护刷新,不如你也改为paintbox.
TScrollEvent = procedure(var Message: TWMHScroll) of object; TExtScrollBox = class(TScrollBox)
private
FOnHScroll,
FOnVScroll: TScrollEvent; procedure WMHScroll(var Message: TWMHScroll); message WM_HSCROLL;
procedure WMVScroll(var Message: TWMVScroll); message WM_VSCROLL;
published
property OnHScroll: TScrollEvent read FOnHScroll write FOnHScroll;
property OnVScroll: TScrollEvent read FOnVScroll write FOnVScroll;
end;implementation
procedure TExtScrollBox.WMHScroll(var Message: TWMHScroll);
begin
if Message.ScrollCode = sb_ThumbTrack then
HorzScrollBar.Position := Message.Pos;
if Assigned(FOnHScroll) then
FOnHScroll(Message);
inherited
end;procedure TExtScrollBox.WMVScroll(var Message: TWMVScroll);
begin
if Message.ScrollCode = sb_ThumbTrack then
VertScrollBar.Position := Message.Pos;
if Assigned(FOnVScroll) then
FOnVScroll(Message);
inherited
end;