在我进入我的问题之前,让我解释一下我的设置:
首先:我有一个 PictureBox ,其中包含一个在运行时生成的位图。这个位图可以是不同的宽度,但总是相同的高度。
第二: PictureBox 不支持滚动,因此,我将 PictureBox 停靠在面板中。最初,我使用了面板的自动滚动功能,但在我通过本文发现 PictureBox 有大小限制后放弃了该功能。我还了解到,最好使用小的 PictureBox 并且只绘制需要看到的内容而不是整个图像。
第三:所以我添加了一个 HScrollBar,它很好而且很花哨,但我似乎无法弄清楚使滚动条有多大背后的数学。我尝试将滚动条的最大值设置为位图的长度,但正如您所见,如果我使用自动滚动功能,我的滚动条的大小比 Windows 放入的要小得多。
我的问题是,滚动条大小背后的数学原理是什么?如何在我的自定义滚动条中模拟它?
如果我的问题不清楚,请告诉我,我会尽力使其更容易理解。并提前感谢您的帮助!