谁知道如何操作TMemo的滚动条?
我想控制TMemo滚动条的位置,,,谁知道怎么做? 问题点数:50、回复次数:7Top
1 楼vvvvvvv(^^^^^^^)回复于 2004-07-03 17:20:33 得分 0
SendMessage(Memo1.Handle, WM_VSCROLL, SB_LINEDOWN, 0);
但是这样只能以行为单位滚动,我向更精确的控制。Top
2 楼yq3woaini(哈哈镜 选择好心情)回复于 2004-07-03 18:30:51 得分 0
帮你顶Top
3 楼maming2003(關機.睡覺!)回复于 2004-07-04 07:28:00 得分 0
顶
Top
4 楼pengxuan(网虫先生)回复于 2004-07-04 09:41:01 得分 0
帮你顶Top
5 楼iBuilder(夏桑菊)回复于 2004-07-04 09:46:02 得分 0
现在用的电脑没装DELPHI,不然一起研究一下Top
6 楼iBuilder(夏桑菊)回复于 2004-07-04 10:15:39 得分 20
可不可以用SMB_SETPOS,来设置位置,SendMessage(Memo1.Handle, WM_VSCROLL, SMB_SETPOS, POS);POS是要设置的位置整数型没帮助信息在,电脑又没装DELPHI,不知道对不对Top
7 楼iBuilder(夏桑菊)回复于 2004-07-04 12:23:37 得分 30
用WM_VSCROLL 配合 SB_THUMBTRACK 就可以搞定
nScrollCode = (int) LOWORD(wParam); // scroll bar value
nPos = (short int) HIWORD(wParam); // scroll box position
注意 在wParam 参数的高位中放 要移动的位置,就是 nPos,低位放 SB_THUMBTRACK,
具体如下
procedure TForm1.Button1Click(Sender: TObject);
var
pos:SmallInt;
wP:Integer;
begin
pos:=10;\\要移动的位置
wp:=pos shl 16 ;\\把 pos放到高位
wp:=wp+SmallInt(SB_THUMBTRACK);\\参数 SB_THUMBTRCK 放在低位
SendMessage(Memo1.Handle,WM_VSCROLL,wp,0);
end;
Top




