请教,Excel VBA中的Image控件,能否实现图片在该控件中的上下滚动?也就是,能否添加上下滚动条。谢谢。

 我来答
半边蛋壳
2018-01-02 · TA获得超过428个赞
知道小有建树答主
回答量:366
采纳率:92%
帮助的人:153万
展开全部

原始图片

第一步:打开VBA,插入窗体,调整合适的窗体大小


第二步:添加一个Frame控件,在Frame控件里添加一个Image控件,在Frame控件右边添加一个ScrollBar控件,改名为VScrollBar,在Frame控件下边添加一个ScrollBar控件,改名为HScrollBar。

第三步:把Image控件的AutoSize属性设置为True,Picture属性选择你要载入的图片

第四步:填写控件代码。

'* 窗体初始化事件
Private Sub UserForm_Initialize()
    '* 赋值竖向滚动条最大值
    VScrollBar.Max = (Image1.Height - Frame1.Height) / 50 '如果嫌滚动条滑块小的话可以把这段中文注释删掉,只留/50。滑块就变大了 / 50
    '* 赋值横向滚动条最大值
    HScrollBar.Max = (Image1.Width - Frame1.Width) / 50 '如果嫌滚动条滑块小的话可以把这段中文注释删掉,只留/50。滑块就变大了 / 50
End Sub
'* 竖向滚动条滚动事件
Private Sub VScrollBar_Scroll()
    '* 通过调整图像控件的Top值来实现图片滚动
    Image1.Top = 0 - VScrollBar.Value * 50 '如果嫌滚动条滑块小的话可以把这段中文注释删掉,只留*50。滑块就变大了 * 50
End Sub

'* 横向滚动条滚动事件
Private Sub HScrollBar_Scroll()
    '* 通过调整图像控件的Left值来实现图片滚动
    Image1.Left = 0 - HScrollBar.Value * 50 '如果嫌滚动条滑块小的话可以把这段中文注释删掉,只留*50。滑块就变大了 * 50
End Sub

第五步:运行测试效果图(滚动条滑块初始状态)

第六步:运行测试效果图(滚动条滑块增大状态)

本教程为原创作品,有什么问题请及时追问,满意请及时采纳。

不知道为什么知道里回答的图片这么模糊,刚为你写了条百度经验,正在审核中,如果看不清不能用的话追问我,明天给你补上百度经验的链接。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式