作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用Canvas在TForm上的列表中绘制小位图,但超出了TForm的大小限制,并且使用垂直和水平滚动条进行导航并允许用户显示整个区域。
我注意到TForm中有HorzScrollBar和VertScrollBar TControlScrollBar,但不可能让它们可见或可用,即使它们被选中为可见。
我认为它们只与 TForm 的组件有关,如果我们调整 TForm 的大小,它们应该会出现。
我是否必须使用外部TScrollBar(垂直和水平的)来实现TForm客户区的滚动(通过程序)或者有没有办法使用 HorzScrollBar 和 VertScrollBar TControlScrollBar?
最佳答案
要在需要时自动显示滚动条(控件位于可见区域之外),请设置 AutoScroll := true;
。
但这需要您使用控件来绘制图像。如果您想要显示滚动条,即使您只直接在表单 Canvas 上绘制(绘制),您也可以通过将 Range
属性设置为绘制区域的实际范围来实现。
例如
procedure TForm24.FormCreate(Sender: TObject);
begin
self.HorzScrollBar.Range := 1000;
end;
因此,要回答您的问题,您可以使用内置滚动条。
关于delphi - TScrollBar 和 TControlScrollBar 滚动 TForm 客户区有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48059538/
我想用Canvas在TForm上的列表中绘制小位图,但超出了TForm的大小限制,并且使用垂直和水平滚动条进行导航并允许用户显示整个区域。 我注意到TForm中有HorzScrollBar和VertS
我是一名优秀的程序员,十分优秀!