资源简介
实现CListCtrl控件的Item项拖拽效果,本源码对应的博客链接为:http://blog.csdn.net/d704791892/article/details/22600075
代码片段和文件信息
// DragListCtrl.cpp : 实现文件
//
#include “stdafx.h“
#include “DragListCtrlDemo.h“
#include “DragListCtrl.h“
// CDragListCtrl
IMPLEMENT_DYNAMIC(CDragListCtrl CListCtrl)
CDragListCtrl::CDragListCtrl()
: m_nSelItem(-1)
m_bDragging(FALSE)
m_pDragImageList(NULL)
{
}
CDragListCtrl::~CDragListCtrl()
{
if (m_pDragImageList)
{
delete m_pDragImageList;
m_pDragImageList = NULL;
}
}
BEGIN_MESSAGE_MAP(CDragListCtrl CListCtrl)
ON_NOTIFY_REFLECT(LVN_BEGINDRAG &CDragListCtrl::OnLvnBegindrag)
ON_WM_LBUTTONUP()
ON_WM_MOUSEMOVE()
END_MESSAGE_MAP()
// CDragListCtrl 消息处理程序
void CDragListCtrl::OnLvnBegindrag(NMHDR *pNMHDR LRESULT *pResult)
{
LPNMLISTVIEW pNMLV = reinterpret_cast(pNMHDR);
// TODO: 在此添加控件通知处理程序代码
*pResult = 0;
int count = GetSelectedCount();
if (1 != count)
return;
POSITION pos = GetFirstSelectedItemPosition();
if (NULL == pos)
return;
m_nSelItem = GetNextSelectedItem(pos);
if (-1 == m_nSelItem)
return;
CPoint pt = pNMLV->ptAction;
m_pDragImageList = CreateDragImage(m_nSelItem &pt);
if (NULL == m_pDragImageList)
return;
m_bDragging = TRUE;
m_pDragImageList->BeginDrag(0 CPoint(8 8));
ClientToScreen(&pt);
CRect rt;
GetParent()->GetWindowRect(&rt);
pt.x -= rt.left;
pt.y -= rt.top;
m_pDragImageList->DragEnter(GetParent() pt);
SetCapture();
}
void CDragListCtrl::OnLButtonUp(UINT nFlags CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if (m_bDragging)
{
ReleaseCapture();
m_bDragging = FALSE;
//m_nSelItem = -1;
m_pDragImageList->DragLeave(GetParent());
m_pDragImageList->EndDrag();
m_pDragImageList->DeleteImageList();
delete m_pDragImageList;
m_pDragImageList = NULL;
}
CListCtrl::OnLButtonUp(nFlags point);
}
void CDragListCtrl::onmousemove(UINT nFlags CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if (m_bDragging)
{
CPoint pt = point;
ClientToScreen(&pt);
CRect rt;
GetParent()->GetWindowRect(&rt);
pt.x -= rt.left;
pt.y -= rt.top;
m_pDragImageList->DragMove(pt);
}
CListCtrl::onmousemove(nFlags point);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2226 2014-03-30 18:58 DragListCtrlDemo\DragListCtrlDemo\DragListCtrl.cpp
文件 534 2014-03-30 19:18 DragListCtrlDemo\DragListCtrlDemo\DragListCtrl.h
文件 105232 2014-03-30 16:23 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemo.aps
文件 1783 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemo.cpp
文件 505 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemo.h
文件 5318 2014-03-30 16:23 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemo.rc
文件 5706 2014-03-30 15:29 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemo.vcproj
文件 3965 2014-03-30 17:41 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemoDlg.cpp
文件 827 2014-03-30 16:32 DragListCtrlDemo\DragListCtrlDemo\DragListCtrlDemoDlg.h
文件 3031 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\ReadMe.txt
文件 67777 2007-11-28 16:21 DragListCtrlDemo\DragListCtrlDemo\res\DragListCtrlDemo.ico
文件 372 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\res\DragListCtrlDemo.rc2
文件 734 2014-03-30 16:23 DragListCtrlDemo\DragListCtrlDemo\resource.h
文件 149 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\stdafx.cpp
文件 1854 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\stdafx.h
文件 1030 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo\targetver.h
文件 914 2014-03-30 15:21 DragListCtrlDemo\DragListCtrlDemo.sln
..A..H. 13824 2014-03-30 19:21 DragListCtrlDemo\DragListCtrlDemo.suo
目录 0 2014-03-30 19:18 DragListCtrlDemo\DragListCtrlDemo\res
目录 0 2014-03-30 19:22 DragListCtrlDemo\DragListCtrlDemo
目录 0 2014-03-30 19:21 DragListCtrlDemo
----------- --------- ---------- ----- ----
215781 21
- 上一篇:NISP一级题库100T
- 下一篇:51单片机8位数码管动态扫描显示
相关资源
- 远控小木马
- SkinHu(支持Unicode)+SkinH(支持多字节
- EosCtrl 控件应用VC
- 八皇后爬山法
- 自绘菜单Demo
- Myrecord.rar
- VC Ctreectrl树节点后面添加图标
- dede织梦sitemap网站地图生成插件
- 绘制拓扑图
- CListCtrl 使用演示的
- CListCtrl自绘CheckBox
- CListCtrlEx扩展列表控件
- 简单多边形的屋脊线计算算法
- 蛐蛐V3.0.zip
- 原创鼠标连点器
- ListView自定义Item
- 数据库课程设计大作业-餐饮管理系统
- vc实现dicom读取与显示
- Freqent Itemset 笔记
- CListCtrl的使用
- 局域网聊天程序基于套接字
- 博客-Windows窗体原理及控件WM_DRAWITEM和
- 皮尔森相关系数 之用户推荐的协同过
- 实现cgridlistctrlex,并使用鼠标响应事
- IBindStatusCallback子类
- 局域网聊天室资源百度云链接
- CListCtrl重绘,内嵌按钮等控件
- ClistCtrl中集成treeCtrl
-
Item ba
sed collaborative filtering recommen - qml 用item自定义dialog 对话框
评论
共有 条评论