两种方式实现:PPT中实现图片的拖动功能 (2)
更新时间:2023-04-29 19:34:01 阅读量: 实用文档 文档下载
- 两种方式实现单例模式推荐度:
- 相关推荐
【PPT中也能实现图片的拖动功能】
本文档内包括两种方法来实现
现对PPT中如何实现:当播放PPT时,能够随意拖动图片到指定位置(补充:通过插入制作好的FLASH 也可以实现这样的效果,后续有时间了会接着发布的,敬请期待)。、
一、通过宏实现PPT中图片的拖动功能
此处建议将宏的安全级别设置为低。
1.打开你要设置图片拖动功能的PPT。
2.点击菜单:“工具——宏——宏”,出现对话窗口。
3.填写对话窗口中的“宏名”,宏名可以随意命名,比如:wantmove,再点“创建”,就进入代码模式。
4.删去所看到的所有的代码,然后把下面的代码全拷贝进去。
Option Explicit
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As L ong) As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As PointAPI) As Long
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long Public Declare Function MonitorFromPoint Lib "user32.dll" (ByVal x As Long, ByVal y As Long, By Val dwFlags As Long) As Long
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Private Const SM_SCREENX = 0
Private Const SM_SCREENY = 1
Private Const sigProc = "Drag & Drop"
Public Const VK_SHIFT = &H10
Public Const VK_CTRL = &H11
Public Const VK_ALT = &H12
Private Type PointAPI
x As Long
y As Long
End Type
Public Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Public mPoint As PointAPI, dPoint As PointAPI
Public ActiveShape As Shape
Dim dragMode As Boolean
Dim dx As Double, dy As Double
Sub DragandDrop(sh As Shape)
dragMode = Not dragMode
If dragMode Then Drag sh
End Sub
Private Sub Drag(sh As Shape)
Dim i As Integer, sx As Integer, sy As Integer
Dim mWnd As Long, WR As RECT
dx = GetSystemMetrics(SM_SCREENX): dPoint.x = dx
dy = GetSystemMetrics(SM_SCREENY): dPoint.y = dy
GetCursorPos mPoint
With ActivePresentation.SlideShowWindow
mWnd = WindowFromPoint(mPoint.x, mPoint.y)
GetWindowRect mWnd, WR
sx = WR.Left
sy = WR.Top
End With
If dx > dy Then
dx = dy
End If
If dy > dx Then
dy = dx
End If
While dragMode
GetCursorPos mPoint
sh.Left = (mPoint.x - sx) / dx - sh.Width / 2
sh.Top = (mPoint.y - sy) / dy - sh.Height / 2
DoEvents
i = i + 1: If i > 2000 Then dragMode = False: Exit Sub
Wend
End Sub
5.点击“保存”后,关闭代码模式,回到ppt设计页面。在你需要拖动的图片上鼠标右击,选择“动作设置——单击鼠标——运行宏——确定”!
6.放映幻灯片,看看效果吧。
拖动图片方式:播放PPT,在图片上单击鼠标,放开后,图片就随你鼠标移动,如果你再单击鼠标,图片就停在你单击的地方。
二、通过VBA编实现PPT中图片的拖动功能
此处建议将宏的安全级别设置为低。
1.在演示文稿插入图像控件(视图——工具栏——控件工具箱),打开属性窗口,将picture设成你想拖动的图片(图片大小要根据实际情况进行调整),遗憾的是Image控件不支持透明。
2.双击图像控件,打开的VBA编辑窗口(注意双击后先删除所有代码),复制下面的代码:
Dim X1, Y1 As Integer
Dim Down As Boolean
Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Singl e, 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 Singl e, 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
3.保存,关闭VBA编辑窗口,放映幻灯片,即可看效果了。
4.如果你想拖动多张图片,如法炮制,复制上面的三个鼠标事件,修改Image1、X1、Y1。
拖动图片方式:播放PPT,在图片上按住鼠标,并且要长按住,这样图片才会随你鼠标移动,放开后,图片就停在你放开的地方。
正在阅读:
击鼓传花游戏作文350字06-21
钻石抛光等级怎么看06-15
怎么看主板的好坏08-12
应用韩语专业建设规划03-20
神经内科查体03-05
郑五年级语文下册作文教学计划08-30
宁波公交线路09-02
课设报告模版 - 图文06-13
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 实现
- 拖动
- 方式
- 功能
- 图片
- PPT
- 超声波风速风向仪设计说明
- 【完整版】2019-2025年中国平地机行业全国市场开拓策略研究报告
- 【完整版】2019-2025年中国推土机行业新产品进入市场策略制定与实施研究报告
- 压力容器实操考试内容1
- 【解析】2021届广一模作文:探索从未停步,超越永无止境
- 脆弱性风险评估控制程序
- 拼盘装饰教案-烹饪图案写生、变化教案
- XX区2020年度充分就业城区建设工作实施方案
- “携程”“去哪儿”产品服务体系分析.doc
- 再生资源示范产业园申请报告
- 某公司法律风险管理办法
- 公称压力MPa管道壁厚对照表
- 建筑施工电气工程师内部培训资料
- 高中物理知识点《动量》《碰撞》《完全非弹性碰撞》精品专题课后练习【1】(含答案考点及解析)
- 单片机原理及应用教程第3版习题课后答案
- 七年级历史与社会上册 第二单元 第一课 第二课时 海洋对人类的影响教案 人教版
- 课题研究中期成果报告
- 2020年新疆乌鲁木齐市中考物理一模试卷
- 施工电梯司机入场三级安全教育考试卷
- 混凝土格构梁护坡施工方案