- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
4.DragDrop和DragOver拖放事件 与拖放有关的事件是DragDrop和DragOver。以上介绍的拖放属性和拖放方法都是作用在被拖动控件上的,而拖放事件是在拖放的目标对象上引发的,也就是说无论采用哪种方式进行控件的拖放操作,被拖动的控件称为源对象,拖动并投放的目标称为目标对象。在拖动操作之前,首先要对源对象设置DragMode及DragIcon属性,指明拖放操作的方式和源对象在被拖动过程中随鼠标移动显示的图标。如果是手动拖放,要在鼠标(如MouseDown)事件过程中对源对象调用Drag方法启动控件的拖动操作;如果是自动方式,当用户用鼠标拖拉源对象时便开始拖动操作。源对象在目标对象上被拖动的过程中便引发目标对象的DragOver事件,当源对象被投放到目标对象上时,即释放鼠标; 或在程序中采用Drag方法结束拖拉并投放控件时,便在目标控件上引发DragDrop事件。在这两种事件引发的同时,系统自动将源对象作为Source参数传给事件过程,可通过程序设计对源对象进行一些操作和判别,同时鼠标指针的位置及拖放过程的状态,也作为参数传给事件过程,供程序识别和使用。State参数表示源对象在目标对象范围内拖动的情况,它有三个值:0、1和2,分别表示进入、离去和跨越一个目标对象。 一般在目标对象的DragDrop事件过程中,对源对象调用Move方法,使源对象经拖放操作真正发生位移,在新的位置上重新定位。这样拖放操作使源对象随鼠标指针的移动而真正发生了位移,并投放在释放鼠标的位置上。 【例12-5】 假设窗体上有图形框picIcon,装有某个图形,它能作为源对象被以自动方式拖放到该窗体的某个地方。另外,还有一个标题为“取消拖放”,名称为lblCancel的标签,当图形被拖到该标签上时取消拖放操作。 在设计状态把picIcon.DragMode设置为1,编写如下的事件过程: 鼠标在表单上拖放的事件响应 Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single) Source.Move (X - Source.Width / 2), (Y - Source.Height / 2) End Sub “取消”标签上鼠标移过的事件响应 Private Sub lblCancel_DragOver(Source As Control, X As Single, Y As Single, State As Integer) Source.Drag 0 End Sub Form_Draprop过程使控件picIcon被拖放到窗体的指定位置,且图形框的中央落在鼠标指针位置,拖放过程如图12.5所示: 图12.5 对象拖放示例 【例12-6】 设计一个应用程序。用户能够从文件列表框中选择一个图标文件(.ico、.bmp或 .wmf,然后把它拖放到图形框中,如果选择了其它文件,则显示“不能装入图标!”信息。拖动时以该图标作为指针显示。界面对象属性设置如表12.10所示。 控件属性设置中,标签lblDrag是作为被拖放文件名的替身来使用的,程序运行期间不可见。 在窗体层对变量strFinalname进行说明:Dim strFinalname As String,它存放用户所选择的图标文件的路径和文件名。 表12.10 文件显示拖动操作设置 窗体上的命令按钮用于退出,驱动器列表框、目录列表框和文件列表框需要联合动作。 在下面的filFile_MouseDown事件中,若按下鼠标时,选择的是一个图标文件,则把该图标作为lblDrag标签的DragIcon属性值,以便拖动时能看到被拖动的是一个什么图标,并且把lblDrag标签移动到鼠标指针下面,开始拖动标签。这里要说明的是,被拖动的实际上并不是一个文件名,只有控件可被拖动,控件内部的元素是不能单独被拖动的,这里使用了一个标签作为文件名的替身。如果选择的不是图标文件,则将显示“不能装入图标!”信息。显示结果如图12.6所示。 图12.6 图片文件的拖放示例 文件上当鼠标落下时引发的事件响应如下: Private Sub filFile_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) On Error Resume Next 当发生错误时,忽略错误行,继续执行下一语句 If
您可能关注的文档
- 新Visual FoxPro 6.0程序设计教程 第二版 教学课件 丁爱萍 第11 15章 第12章.ppt
- 新Visual FoxPro 6.0程序设计教程 第二版 教学课件 丁爱萍 第11 15章 第13章.ppt
- 新Visual FoxPro 6.0程序设计教程 第二版 教学课件 丁爱萍 第11 15章 第14章.ppt
- 新Visual FoxPro 6.0程序设计教程 第二版 教学课件 丁爱萍 第11 15章 第15章.ppt
- 新Visual FoxPro 6.0程序设计教程 第二版 教学课件 丁爱萍 封面及目录.ppt
- 新Visual FoxPro 6.0程序设计教程(丁爱萍) 第1章.ppt
- 新Visual FoxPro 6.0程序设计教程(丁爱萍) 第2章.ppt
- 新Visual FoxPro 6.0程序设计教程(丁爱萍) 第3章.ppt
- 新Visual FoxPro 6.0程序设计教程(丁爱萍) 第4章.ppt
- 新Visual FoxPro 6.0程序设计教程(丁爱萍) 第5章.ppt
- 新VisualBasic实用教程 薛亮 第13章.ppt
- 新VisualBasic实用教程 薛亮 第14章.ppt
- 新VisualBasic实用教程 薛亮 封面及目录.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第1章 概 述.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第2章 数据库的基本操作.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第3章 数据的检索、统计与多工作区操作.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第4章 查询与视图.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第5章 程序设计.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第6章 面向对象程序设计基础.ppt
- 新VisualFoxpro6.0数据库原理与应用 胡晓燕 第8章 报表和标签.ppt
最近下载
- 人教版数学六年级上册第四单元《比》单元整体作业设计 (3).docx VIP
- 2025年水平定向钻市场调查报告.docx
- IPC J-STD-003D CN 中文目前最新版TOC.pdf VIP
- 2024年杭州钱塘新区产业发展集团有限公司下属公司招聘真题及答案详解(各地真题).docx VIP
- 飞机主动杆结构设计及控制策略研究.doc VIP
- 2024年世界职业院校技能大赛中职组“婴幼儿保育组”赛项考试题库-下(多选、判断题汇总).docx VIP
- 全新版大学英语第三册Unit 1 Changes in the way we live.ppt VIP
- CNAS-CL02-A006:2018 医学实验室质量和能力认可准则在输血医学领域的应用说明.pdf VIP
- xx集团粮食仓储及加工基地可行性研究报告.docx
- 2025医院药品不良反应培训.pptx VIP
文档评论(0)