jokerdong 发表于 2017-3-25 09:18:25

vba能否实现播放状态下拖动图片至任意位置

如题,vba能否实现播放状态下拖动图片至任意位置,做课件想实现更多交互效果,ppt不知道能不能做

congestion 发表于 2017-3-26 19:02:28

下面代码的功能,实现的是在PPT幻灯片播放的过程中,可以拖动图片,改变图片的位置,实现拖曳的效果。说得更简单一点,指的就是在播放幻灯片的时候,可通过鼠标拖动的办法,改变图片对象在幻灯片中的位置。
  一、所需要的条件  在幻灯片插入图像控件,并且将picture属性设置成为图片的地址。  本例实现的是单张图片的拖曳,如果要实现多张的,可使用如下相同的代码,需要修改的地方仅为三处。分别为:Image1、X1、Y1。Image1为图片控件的名称、X1为控件的X坐标位置、Y1为控件的Y坐标位置。  二、代码如下  双击图像控件,在VBA编辑窗口输入如下的代码即可:<p style="color: rgb(0, 0, 0); font-family: Simsun; font-size: medium;">  Dim X1, Y1 As Integer
  Dim Down 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</p><p style="color: rgb(0, 0, 0); font-family: Simsun; font-size: medium;">  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</p>


virind 发表于 2017-3-26 19:02:48

很不错,顶一下!
页: [1]
查看完整版本: vba能否实现播放状态下拖动图片至任意位置