1、首先小编这里创秃赈沙嚣建一个winform的桌面程序,然后再里面放一个TableLayoutPanel,属性Dock设置为Fill,设置为两行两列,1行1列设就女蒿鸳置为图片展示区,1行2列设置为VScrollBar,2行1列设置为HScrollBar,2行2列什么也不放,在1行1列里面放一个Panel,属性Dock设置为Dock,然后再在panel中放置一个pictureBox,然后pictureBox的属性Image设置为一张大图,图片的尺寸大于panel尺寸,pictureBox的SizeMode设置为AutoSize,如下图:
2、接下来开始代码部分,这里是主窗体的主要初始化代码,如下图:
3、下图中是窗口一打开,也就是程序一启动之后的代码,这里将pictureBox的SizeMode属性设置为AutoSize,这里还设置了滚动条的Maximum和LargeChange属性,这两个属佣甲昭宠性到底应该怎样设置呢,LargeChange表示的是滚动条的滚动幅度,Maximum表示最大值,我经过各种测试得到这两个参数的设置其实很简单,只需要将Maximum设置为pictureBox的高度或者狂赌,而LargeChange设置为panel的高度或者宽度就可以了,如下图:
4、这里是设置VScrollBar和HScrollBar的scroll事件,按照下图中代码设置即可,如下图:
5、接下来设置一下窗体的变大变小事件,当窗体的尺沌纟釜变寸变化的时候,这个时候我们需要对VScrollBar和HScrollBar的Maximum和Large艘早祓胂change的属性,再次设置这两个属性的值,然后还需要将滚动条的位置以及pictureBox的位置置0,如下图:
6、下图是程序正常运行时的截图,可以看到滚动的位置大小以及拖动后的图像显示,图像显示比较完全,如下图:
7、下图是窗口尺寸变化之后运行时的截图,可以看到滚动的位置大小以及拖动后的图像显示,图像显示比较完全,如下图:
8、这里着重说明滚动条的设置主要一是要滚动条滚动之后可以将pictureBox的画面显示完全,另外窗体尺寸变化的时候,滚动条的大小还可以变化。主要要实现这两个功能。