找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6195|回复: 6

PPT中如何实现图片的任意拖拽

[复制链接]
发表于 2011-12-3 10:03:13 | 显示全部楼层 |阅读模式
一个PPT制作群里面帖出来的,现转发于此。自己没试过,但或许对有的老师有用。

图片或图形的任意拖拽在课件和游戏中经常用到。PPT中要实现图片或图形的任意拖拽需要通过VBA编程。现介绍利用图像控件实现图片任意拖拽的方法:
1.在演示文稿插入图像控件,打开属性窗口,将picture设成你想拖动的图片,遗憾的是Image控件不支持透明。
2. 双击图像控件,打开的VBA编辑窗口(注意双击后已有两行代码,先删除),复制下面的代码:
Dim X1, Y1 As Integer
Dim Down As Boolean
Private Sub Image1_MouseDown(ByVal ButtonAs Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Not Down Then
X1 = X
Y1 = Y
Down = True
End If
End Sub
Private Sub Image1_MouseMove(ByVal ButtonAs Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Down Then
Image1.Left = Image1.Left + X - X1
Image1.Top = Image1.Top + Y - Y1
X1 = X
Y1 = Y
End If
End Sub
Private Sub Image1_MouseUp(ByVal Button AsInteger, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Down = False
SlideShowWindows(1).View.First
End Sub
运行,OK
代码很简单,如果你想拖动多张图片,如法炮制,复制上面的三个鼠标事件,修改Image1X1Y1




该贴已经同步到 锦江渔夫的微博
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
发表于 2012-11-25 10:15:15 | 显示全部楼层
试了一下,运行的时候出现错误,是不是代码这里需要修改什么呢?
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
发表于 2012-11-25 14:54:54 | 显示全部楼层
修改了一下,代码为即可:
Dim X1, Y1 As Integer
Dim Down As Boolean

Dim X2, Y2 As Integer
Dim Down2 As Boolean

'——————————————————————————
Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Not Down Then
    X1 = X
    Y1 = Y
    Down = True
    End If
End Sub
Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Down Then
    Image1.Left = Image1.Left + X - X1
    Image1.Top = Image1.Top + Y - Y1
    X1 = X
    Y1 = Y
    End If
End Sub
Private Sub Image1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Down = False
    SlideShowWindows(1).View.First
End Sub

Private Sub Image1_Click()

End Sub
其中如果多张图片的话,就复制代码贴在后面,将Image1中的1改为2(记得要改全哦)以此类推即可
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
发表于 2012-11-25 14:58:41 | 显示全部楼层
我也明白楼主的代码问题在哪里了,就是ButtonAs是两个单词,楼主的没有隔开,加个空格键即可,后面一个也是如此
实践出真知,一点点实践就做成了

点评

如何在ppt中插入 图像控件呢?  发表于 2012-11-27 10:13
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
发表于 2012-11-25 18:58:07 | 显示全部楼层
又学了一招
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
发表于 2012-11-27 17:41:34 | 显示全部楼层
qiusi 发表于 2012-11-25 14:58
我也明白楼主的代码问题在哪里了,就是ButtonAs是两个单词,楼主的没有隔开,加个空格键即可,后面一个也是 ...

打开视图——工具——控件箱,在这个工具条上就可以找到
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
头像被屏蔽
发表于 2012-11-27 19:42:18 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
淘宝网搜索“星韵地理网店”地理教辅、学具、教具专卖。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|星韵百科|星韵地理网 ( 苏ICP备16002021号 )

GMT+8, 2024-11-22 08:19 , Processed in 0.073276 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表