由于不知道哪里可以放源程序,所以只有在这里说说思路了。
2011-07-20 09:47
465 查看
由于不知道哪里可以放源程序,所以只有在这里说说思路了。
正在装载数据……
利用剪贴板,注册一个剪贴板文件类型.
RegisterClipboardFormat( LPCTSTR lpszFormat );
注册一个自定义的剪贴板格式,可以实现拖放任何数据。
下面介绍一下拖放的实现:
要使控件支持拖放,首先要实现一个类,继承于COleDropTarget.然后
重载COleDropTarget的几个函数。
virtual DROPEFFECT OnDragEnter( CWnd* pWnd, COleDataObject* pDataObject,
DWORD dwKeyState, CPoint point );
virtual DROPEFFECT OnDragOver( CWnd* pWnd, COleDataObject* pDataObject,
DWORD dwKeyState, CPoint point );
virtual void OnDragLeave( CWnd* pWnd );
virtual BOOL OnDrop(CWnd* pWnd, COleDataObject* pDataObject,
DROPEFFECT dropEffect, CPoint point);
然后对于要拖放的目标对象,注册这个类。
m_DropTarget.Register(this);
在源对象开始拖动的时候,建立一个COleDataSource对象,并把要拖放
的数据放到里面。
COleDataSource *poleSourceObj = new COleDataSource ;
HGLOBAL hData=GlobalAlloc(GHND|GMEM_SHARE,str.GetLength()+1);
strcpy((LPSTR)GlobalLock(hData),str.LockBuffer());
GlobalUnlock(hData);
poleSourceObj->CacheGlobalData(CF_TEXT,hData);
DROPEFFECT dropeffect = poleSourceObj->DoDragDrop();
if ( dropeffect == DROPEFFECT_MOVE)
DeleteItem(hTSelItem);
delete poleSourceObj;
在我们重载的OnDrop()函数
virtual BOOL OnDrop(CWnd* pWnd, COleDataObject* pDataObject,
DROPEFFECT dropEffect, CPoint point);
中,把数据提取出来。
HGLOBAL hData = pDataObject->GetGlobalData(CF_TEXT);
CString strTxt = (LPTSTR)GlobalLock(hData);
这样就实现了拖放。。 http://www.99inf.net/SoftwareDev/VC/26020.htm
正在装载数据……
利用剪贴板,注册一个剪贴板文件类型.
RegisterClipboardFormat( LPCTSTR lpszFormat );
注册一个自定义的剪贴板格式,可以实现拖放任何数据。
下面介绍一下拖放的实现:
要使控件支持拖放,首先要实现一个类,继承于COleDropTarget.然后
重载COleDropTarget的几个函数。
virtual DROPEFFECT OnDragEnter( CWnd* pWnd, COleDataObject* pDataObject,
DWORD dwKeyState, CPoint point );
virtual DROPEFFECT OnDragOver( CWnd* pWnd, COleDataObject* pDataObject,
DWORD dwKeyState, CPoint point );
virtual void OnDragLeave( CWnd* pWnd );
virtual BOOL OnDrop(CWnd* pWnd, COleDataObject* pDataObject,
DROPEFFECT dropEffect, CPoint point);
然后对于要拖放的目标对象,注册这个类。
m_DropTarget.Register(this);
在源对象开始拖动的时候,建立一个COleDataSource对象,并把要拖放
的数据放到里面。
COleDataSource *poleSourceObj = new COleDataSource ;
HGLOBAL hData=GlobalAlloc(GHND|GMEM_SHARE,str.GetLength()+1);
strcpy((LPSTR)GlobalLock(hData),str.LockBuffer());
GlobalUnlock(hData);
poleSourceObj->CacheGlobalData(CF_TEXT,hData);
DROPEFFECT dropeffect = poleSourceObj->DoDragDrop();
if ( dropeffect == DROPEFFECT_MOVE)
DeleteItem(hTSelItem);
delete poleSourceObj;
在我们重载的OnDrop()函数
virtual BOOL OnDrop(CWnd* pWnd, COleDataObject* pDataObject,
DROPEFFECT dropEffect, CPoint point);
中,把数据提取出来。
HGLOBAL hData = pDataObject->GetGlobalData(CF_TEXT);
CString strTxt = (LPTSTR)GlobalLock(hData);
这样就实现了拖放。。 http://www.99inf.net/SoftwareDev/VC/26020.htm
相关文章推荐
- 所有英文字母,26个英文字母,由于经常会用到这一整串,所以就粘贴在这里
- 1.首先描述下自定义控件的一般方法: 自定义控件是被创造出来,所以先要复写它三个的构造方法,根据需求决定复写哪个,若没有自定义属性,复写只有一个参数的即可。若有自定义属性,则可以通过obtainSty
- 树的遍历 迭代算法——思路:初始化stack,pop stack利用pop的node,push new node to stack,可以考虑迭代一颗树 因为后序遍历最后还要要访问根结点一次,所以要访问根结点两次是难点
- 近日探得用C++将二进制数据存储到XML文件的方法,由于在研究时,未得到网上其他同仁的帮助(网上搜索了半天没有相关资料,只有.NET的),在这里不敢独享,给别的同仁在搜索时能够搜索到相关资料,也算是绵薄之力! )
- 花都车险服务最好,最专业的是谁? 在花都甚至全国有很多车主买了车险,但并不知道哪些可以理赔,哪些不能赔?所以造成很多车主一旦发生事故就非常紧张,慌张。请收藏广州花都平安保险汪军经理的联系方式:1300
- 由于我的BoBo日志需要天气内容,所以在这里留个脚印。
- DMP文件的生成和使用(转),由于须要取得用户出现问题的信息,所以须要取得demp信息,可以通过本方法获取。
- 周鸿祎,高司令 2010-09-28 00:41 27469人阅读 评论(185) 收藏 举报 还是感到有必要将自己的一些想法快速记下来。 首先是对周鸿祎新员工演讲的看法。 就说实话这一点来说,周鸿祎比很多人强。所以我比较喜欢引用他的话,确实比较实在,不装逼。 至于一个公司招人的风格,是公司自己定的,别人也无权评价。有人说周是画大饼,忽悠员工卖命。废话,难道新员工讲话还有别的目的吗? 但我不认为周的选人思路在别的公司可以通行。原因是这样的:近十几年来,我们听到很多人有类似的说法,比如我们公司不要
- 优先队列,由于优先队列的树形结构是完全二叉树,所以可以使用数组的形式去存储,我的上一个博客是用二叉树的形式去存储优先队列的
- MySQL中select * for update锁表的问题 由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例
- 渣渣用JavaScript开发的消消乐,由于没有按照正规消消乐形式生成,是随机产生图形,所以存在一个算法bug,具体看下面,高手想到可以告诉我
- 有两个好友A和B,住在一片长有蘑菇的由n*m个方格组成的草地,A在(1,1),B在(n,m)。现在A想要拜访B,由于她只想去B的家,所以每次她只会走(i,j+1)或(i+1,j)这样的路线,在草地上有k个蘑菇种在格子里(多个蘑菇可能在同一方格),问:A如果每一步随机选择的话(若她在边界上,则只有一种选择),那么她不碰到蘑菇走到B的家的概率是多少?
- 说说CSS样式中你不知道的“大于号”
- 完全隐藏Master Page Site Actions菜单只有管理员才可以看见
- 假设两个字符串中所含有的字符和个数都相同我们就叫这两个字符串匹配, 比如:abcda和adabc,由于出现的字符个数都是相同,只是顺序不同, 所以这两个字符串是匹配的。要求高效!
- 说说我招聘android技术人员的思路(eoe android 开发者社区-姚尚朗)
- 在博霞路22号(浦东软件园祖冲之园)上班,党组织关系可以转到哪里?抬头是什么?
- 最近在开始捡起java,所以会定期更新写java 的一些组件,有兴趣的朋友可以看下
- 由于原本的小弹框toast在极限操作的情况下会出现悬停不消失,所以我们自定义一个toast