我如何获得Picturebox的滚动条
我有PictureBox picture
。
我用:
picture.Size = bmp.Size; picture.Image = bmp;
假设有两个整数maxWidth
和maxHeigth
。
当尺寸超过maxWidth
和/或maxHeight
时,我想添加垂直/水平滚动条到picture
。 我怎样才能做到这一点?
你可以很容易地使用Panel
控制
插入一个面板到你的窗体,比如说panel1并设置
panel1.AutoScroll = true;
插入一个PictureBox
的Panel
,说图片和设置
picture.SizeMode = PictureBoxSizeMode.AutoSize;
并设置图像
picture.Image = bmp;
希望这可以帮助
这里有一个项目,其中一个人build立了一个ImagePanel
用户控件,你可以把它放到一个表单上; 它给你滚动条和缩放function。
另一个build议是将picturebox放在FlowlayoutPanel中。
将FlowlayoutPanel的自动滚动设置为true,并将图片尺寸模式设置为正常
使用FlowlayoutPanel确保图像始终在面板上为0,0
我也通过将一个picturebox放置在一个面板控件中来工作,我将Panel的AutoScroll属性设置为true,但是我也将Panel的Autosize属性设置为True,将Panel的Dock属性设置为Fill(这样当用户调整forms – 小组也是如此)。 对于Picturebox,我将它的Dock属性设置为None,将SizeMode设置为Autosize(所以它也resize,当面板和窗体resize时,它像一个魅力,图片框有滚动条,当用户调整窗体大小时,一切仍然正确放置!