Chinaunix首页 | 论坛 | 博客
  • 博客访问: 628070
  • 博文数量: 603
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 4940
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-17 11:04
文章分类

全部博文(603)

文章存档

2011年(1)

2008年(602)

我的朋友

分类:

2008-09-17 11:17:06



  这篇文章包含一个demo project,一个继承于CListCtrl的类和一个快速查看这个类功能的release。我不想让这个类十全十美,但对于我当前的项目来讲,它的功能已经足够了。当然了,它还有更进一步完善的地方,欢迎指正!
  左图是程序演示的示例图片。
类CDragDropListCtrl具有以下的功能和特性:
1、支持单选和复选的任意托拽
2、所选择的托拽目标跟随这鼠标突现式的移动
3、当把目标托出上下边界的时候,List Control会自动滚动
4、以LVS_EX_FULLROWSELECT风格的开关方式运行、
5、保存所托拽目标的状态
6、所有的代码都封装在control当中-无需修改父类

  本类源自Wayne Berthin以前写过的一篇文章,但我重写了大部分代码,并且又增加了很多。CreateDragImageEx 方法跟Frank Kobs所给
出的大致相同,但修复了一个小的bug以便于程序能更好的运行。

  要使用这个类,首先要把DragDropListCtrl.cpp和DragDropListCtrl.h两个文件添加到你的工程当中,然后在你的对话框资源中增加一个
List Control,并设置View方式为Report,用ClassWizard为这个List Control添加一个变量,变量的类别为Control,变量类型为
CDragDropListCtrl,最后,把下面一行加到你的对话框头文件的顶部:
#include "DragDropListCtrl.h"
  这样就大功告成了!
--------------------next---------------------

阅读(480) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~