如在 Form 上面放一个 ListView ,如何截获它的 WM_VSCROLL 消息
解决方案 »
- 请各位xdjm推荐一款非日牌的数码相机,谢谢!!!!!!!!!!
- 请教:DLL与EXE的APP SERVER有什么不一样?
- MSSQLServer有没有自动编号数据类型?
- 在程序中打开ppt文件,怎样做到跟在文件上右键选择“显示”一样??
- HELP,DBGrid的显示!!!
- 做DLL的开发时,有哪些WINDOWS常用数据类型,如WORDBOOL等.指针类型有没有?
- 有没有无锡的公司招兼职程序员
- 如何在delphi中实现打印条码 有相关的控件么?
- 关于DLL 的为题?急急急!!!
- 急急急!Delphi6+Paradox是否支持“select * into wpqd_bak from wpqd”?
- 发送消息 和接受消息问题
- 关于NULL值的问题!
具体呢,像这样:procedure TForm1.WndProc(var Message: TMessage);
begin
case Message.Msg of
WM_VSCROLL:
begin
//...
end;
end;
inherited WndProc(Message);
end;这样只能截获到 Form 的 WM_VSCROLL 消息啊。
就和单独声明一个
private:
procedure WMVScroll(var Message: TWMPaint); message WM_VSCROLL;
是一样的小弟愚钝,高人指点!
TForm1= class(TForm)
private
FOldProc: TWndMethod;
....
public
再声明一个方法:
procedure ListViewProc(var Message: TMessage);
.....
end;然后在Form的OnCreate事件中写:
FOldProc:= ListView.WindowProc;
ListView.WindowProc:= ListViewProc;最后在上面的方法中写:
procedure TForm1.ListViewProc(var Message: TMessage);
begin
......//写你的消息处理代码
...
FoldProc(Message); //最后再调用老的处理过程。
end;