我不确定它是否是重复的问题,但我在StackOverflow上找不到任何答案。
问题陈述:我有第三方图像查看器和PDF查看器控件。它们嵌入到C#WinForms页面中。我想以百分比控制滚动条移动。例如,如果我按下" down"键然后垂直滚动条应向下移动到页面高度的20%。我试过以下逻辑:
_imageViewer.VerticalScrollBar.Value += _imageHeight X ZoomFactor X .20
OR
_imageViewer.VerticalScrollBar.Value += pdfViewer1.VerticalScroll.Maximum X .20
这两种方法都没有给我确切的结果。我想我也应该考虑滚动条的拇指大小,但我不知道如何才能获得该值。
请建议我以图像高度或宽度的百分比移动滚动条的任何好方法。
答案 0 :(得分:1)
您可以将ScrollBar
Value
属性指定为合适的值。如文档中所述,当用户按下其中一个箭头键或单击其中一个滚动条按钮时,SmallChange
属性会根据vScrollBar1.SmallChange = ((vScrollBar1.Maximum - vScrollBar1.Minimum) * 20 / 100);
属性中设置的值更改。
示例:强>
def display_image_in_actual_size(im_path):
dpi = 80
im_data = plt.imread(im_path)
height, width, depth = im_data.shape
# What size does the figure need to be in inches to fit the image?
figsize = width / float(dpi), height / float(dpi)
# Create a figure of the right size with one axes that takes up the full figure
fig = plt.figure(figsize=figsize)
ax = fig.add_axes([0, 0, 1, 1])
# Hide spines, ticks, etc.
ax.axis('off')
# Display the image.
ax.imshow(im_data, cmap='gray')
plt.show()
display_image_in_actual_size("./your_image.jpg")