社区
C#
帖子详情
挑战鼠标拖放的效果
raineyquanter
2014-02-04 03:41:13
WinForm程序需要实现鼠标拖放并不复杂,在目标控件中设置AllowDrop,实现DragEnter、DragOver、DragDrop等事件即可。
但是无法实现像Windows桌面图标拖动的效果,如下图所示
仔细看会发现拖动的时候鼠标的下方会出现一个原图标的镜像半透明复制图像,这个效果通过设置DragDropEffects是实现不了的,而且不只是桌面图标,图片拖动也会有类似的效果
问题是:这个如何实现?
...全文
203
3
打赏
收藏
挑战鼠标拖放的效果
WinForm程序需要实现鼠标拖放并不复杂,在目标控件中设置AllowDrop,实现DragEnter、DragOver、DragDrop等事件即可。 但是无法实现像Windows桌面图标拖动的效果,如下图所示 仔细看会发现拖动的时候鼠标的下方会出现一个原图标的镜像半透明复制图像,这个效果通过设置DragDropEffects是实现不了的,而且不只是桌面图标,图片拖动也会有类似的效果 问题是:这个如何实现?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
threenewbee
2014-02-05
打赏
举报
回复
http://blogs.msdn.com/b/adamroot/archive/2008/02/19/shell-style-drag-and-drop-in-net-wpf-and-winforms.aspx
破碎的脸
2014-02-04
打赏
举报
回复
截图就行了。。。
youzelin
2014-02-04
打赏
举报
回复
这个其实是一张快照,鼠标拖的时候这个快照跟着鼠标走,在 drag 拖动的事件里面,你也可以这么做,如果有类似于 mousemove 可以跟踪鼠标走位的事件的话。 关键是你怎么对向前对象做一个快照,这是一个 key point。
Visual C++实践与提高-COM和COM+篇『PDF』
因文件超过20M不能上传,所以拆分为两个文件分次上传 第1章 COM背景知识 1.1 COM的起源 1.1.1 软件业面临的
挑战
1.1.2 传统解决方案 1.1.3 面向对象程序设计方法 1.1.4 最终解决方案:组件软件 1.1.5 面向对象的组件模型——COM 1.2 COM的发展历程 1.2.1 COM以前的对象技术:DDE、OLE 1、VBX控件 1.2.2 COM首次亮相:OLE2 1.2.3 Microsoft拥抱Internet:ActiveX 1.2.4 更多的新名词:Windows DNA和COM+ 1.2.5 远程对象:ORBs和DCOM 1.2.6 COM的最新版本:COM+ 1.3 COM技术现状 1.3.1 COM与CORBA 1.3.2 COM与Enterprise Java Beans 1.3.3 Windows之外的COM 小结 第2章 从C++到COM 2.1 C++客户重用C++对象——例程DB 2.1.1 C++对象 2.1.2 客户程序 2.2 将C++对象移进DLL中——例程DB_cppdll 2.2.1 成员函数的引出 2.2.2 内存分配 2.2.3 Unicode/ASCII兼容 2.2.4 例程实现 2.2.4.1 修改接口文件 2.2.4.2 修改对象程序 2.2.4.3 修改客户程序 2.3 C++对象使用抽象基类——例程DB_vtbl 2.3.1 问题:私有数据成员被暴露 2.3.2 解决方案:抽象基类 2.3.2.1 什么是抽象基类(Abstract Base Class) 2.3.2.2 实现秘诀:虚函数(Virtual Functions) 2.3.3 使用抽象基类 2.3.4 例程实现 2.3.4.1 修改接口文件 2.3.4.2 修改对象程序 2.3.4.3 修改客户程序 2.4 改由COM库装载C++对象——例程dbalmostcom 2.4.1 COM库 2.4.2 对象创建的标准入口点 2.4.3 标准对象创建API 2.4.4 标准对象注册 2.4.5 例程实现 2.4.5.1 修改接口文件 2.4.5.2 修改对象程序 2.4.5.3 修改客户程序 2.5 将C++对象变成COM对象 2.5.1 引用计数 2.5.2 多接口 2.5.3 IUnknown接口 2.5.4 标准类厂接口:IClassFactory 2.5.5 对象代码的动态卸载 2.5.6 自动注册 2.5.7 例程实现 2.5.7.1 修改接口文件 2.5.7.2 修改对象程序 2.5.7.3 修改客户程序 2.6 为COM对象添加多接口支持 2.6.1 多接口 2.6.2 DEFINE_GUID 2.6.3 例程实现 2.6.3.1 修改接口文件 2.6.3.2 修改对象程序 2.6.3.3 修改客户程序 小结 第3章 COM基础知识 3.1 对象与接口 3.1.1 COM对象 3.1.2 COM接口 3.1.3 IUnknown接口 3.1.3.1 生存期控制:AddRef和Release 3.1.3.2 接口查询:QueryInterface 3.1.4 全球唯一标识符GUID 3.1.5 COM接口定义 3.1.6 接口描述语言IDL 3.2 COM应用模型 3.2.1 客户/服务器模型 3.2.2 进程内组件 3.2.3 进程外组件 3.2.4 COM库 3.2.5 HRESULT返回值 3.2.6 COM与注册表 3.3 COM组件 3.3.1 实现类厂对象 3.3.2 类厂对象的创建 3.3.3 实现自动注册 3.3.4 实现自动卸载 3.4 COM客户 3.4.1 COM对象创建函数 3.4.1.1 CoGetClassObject 3.4.1.2 CoCreateInstance 3.4.1.3 CoCreateInstanceEx 3.4.2 如何调用进程内组件 3.4.3 COM客户调用进程外组件 3.5 进一步认识COM 3.5.1 可重用机制:包容和聚合 3.5.2 进程透明性 3.5.3 安全性机制 小结 第4章 COM扩展技术 4.1 可连接对象机制 4.1.1 客户、接收器与可连接对象 4.1.1.1 接收器 4.1.1.2 可连接对象 4.1.1.3 客户 4.1.2 实现可连接对象 4.1.3 实现接收器 4.1.4 建立接收器与连接点的连接 4.1.5 获得出接口的类型信息 4.2 结构化存储 4.2.1 什么叫结构化存储和复合文件 4.2.2 存储对象和IStorage接口 4.2.2.1 IStorage接口 4.2.2.2 获得IStorage指针 4.2.2.3 释放STATSTG内存 4.2.2.4 枚举存储对象中的元
Qt C++
拖放
事件探索之旅:多方法深入解析
Qt C++
拖放
事件探索之旅:多方法深入解析
Flex 学习笔记------ 自定义
拖放
控件ObjectHandler
Flex 学习笔记------ 自定义
拖放
控件ObjectHandler Flex里面写动画
效果
甚是简单,而且没有兼容性问题,这一点比js好太多了。也是最近学习Flex以来感到令人欣慰的地方。 废话不多说,进入正题。 现在的需求是给定一张图片(或其他控件也可以,暂时我就按自己做的项目上的来举例吧),要求拖动四个角的时候,图片可以按比例缩放。这么一个常见的需求,不用多想,网上肯定已经有现成的控...
如何构建web用户界面_构建一个响应式
拖放
用户界面
如何构建web用户界面Drag and drop, in the context of a web app, gives people a visual way to pick up and move elements just like we would in the real world. This bit of skeuomorphism makes User Interfaces with...
javascript
鼠标
_可访问JavaScript:
鼠标
之外
javascript
鼠标
在我的上一篇关于SitePoint的文章中 ,我质疑屏幕阅读器是否可以使AJAX脚本技术可用,并发现在大多数情况下它们不能。 这样做令人失望-指出一个问题而无法提供任何答案。 但是我真的别无选择,因为据我所知,没有任何具体的解决方案可提供。 (尽管自那时以来,其他开发人员进一步扩大了界限 ;特别重要的是Gez Lemon和Steve Faulkner在这一领域所做的工作...
C#
110,538
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章