我使用代码
procedure TMyCanvas.RichEditChange(Sender: TObject);
var
ScrollInfo: TScrollInfo;
begin
FillChar(ScrollInfo, SizeOF(ScrollInfo), 0);
ScrollInfo.cbSize := SizeOf(ScrollInfo);
ScrollInfo.fMask := SIF_RANGE or SIF_PAGE or SIF_POS;
if GetScrollInfo(FRichEdit.Handle, SB_VERT, ScrollInfo) then
begin
FVertScroll.Max := ScrollInfo.nMax;
FVertScroll.Min := ScrollInfo.nMin;
FVertScroll.PageSize := ScrollInfo.nPage;
FVertScroll.Position := ScrollInfo.nPos;
end;
Invalidate;
end;
问题是当我添加/删除行时,当我要调整表单大小时,有时会给我错误。它说“滚动条属性超出范围”
我如何避免呢?
谢谢
最佳答案
您可以尝试设置PageSize
属性,然后调用SetParams
以避免一个接一个地设置各个属性。
关于delphi - 如何防止滚动条超出范围?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6675944/