该控件的实现参照了:http://www.cppblog.com/getborn/archive/2008/05/27/51268.html,表示感谢!!!

1.添加一个类名命为CFriendList,继承CListCtrl类。
2.给类中添加方法与消息响应,具体见我的资源中“MFC仿QQ好友列表控件”。
3.给对话框添加一个List Control控件,并给对话框类添加其对应变量:如CListCtrl myList;然后引入自己的控件头文件如“FriendList.h”,并将
添加的myList变量改为CFriendList类型。
4.添加的List Control控件需要设置以下属性:(我的vs2010为英文版,不知道对应的中文属性叫什么名称,自己查吧)
Aligenment:Top
Border:True
No Column Header:True
Owner Draw Fixed:True
Single Selection:True
View:Report
//可能一些属性不需要修改,自己研究吧

另外:
1.void CFriendList::OnNMCustomdraw(NMHDR *pNMHDR, LRESULT *pResult)
{
//LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// TODO: Add your control notification handler code here
//*pResult = 0;

//NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>( pNMHDR );
// Take the default processing unless we set this to something else below.
//*pResult = CDRF_DODEFAULT;
//设置listctrl的格式,由格子等
//SetExtendedStyle(GetExtendedStyle()  | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
}
//上述方法,在我的对话框中使用后一直闪烁,绘制不出来图像,后来我取消了实现,在AddNewUser的地方使用myList.SetExtendedStyle

(GetExtendedStyle()  | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);也实现了格子

void CFriendList::OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS* lpncsp)
{
// TODO: Add your message handler code here and/or call default
ModifyStyle(WS_HSCROLL,0,0);//禁止水平滚动条
CListCtrl::OnNcCalcSize(bCalcValidRects, lpncsp);
}

2.代码中的numFlag与m_RoomsNum是为了实现我自己的功能,他人可以去掉,使用的原因是因为我要加载的图像都各不同,而原作者的图像只有固定

的一个。可以对照着我上述提供的网站查看修改,作者使用的是m_bmpUnSel,而我使用了m_bmpUnSel2数组。

3.双击list中每一行的事件:直接在对话框的List Control控件上添加NM_DBLCLK事件
void ShowDlg::OnNMDblclkListShow(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
// TODO: Add your control notification handler code here
int index = m_RoomsList.GetSelectionMark();//index就是你双击的行数,从0开始算
//createNewBrowserView(index);
*pResult = 0;

}

4.信息提示,即ToolTip的使用,参照:http://tieba.baidu.com/p/1988489739

其中m_nSubItem(-1), m_nItem(-1), m_bEnableTips(TRUE)

5.补充重绘CListCtrl的滚动条,参照资源中的http://download.csdn.net/detail/xuezhe521/5890809

6.多线程下载参照:http://www.vckbase.com/index.php/wv/1406,他的作者付黎,表示感谢,资源中有下载。

MFC仿QQ好友列表控件相关推荐

  1. 关于C#绘制qq好友列表控件

    发现有bug 文章后面 上一个效果图 左边那张图貌似忘了展示一个功能 源码下载 http://download.csdn.net/detail/crystal_lz/4755251 个人感觉注释还是比 ...

  2. iOS之仿QQ好友列表展开收缩效果的实现

    使用UICollectionView实现 思路 很明显整体它是一个列表,它的分组是一个列表,它里面的好友列表也是一个列表,所以就可以使用组头来设置分组列表,使用cell设置好友列表: 当点击组头的时候 ...

  3. html仿qq最小化怎么实现,JS仿QQ好友列表展开、收缩功能(第一篇)

    JS仿QQ好友列表展开.收缩功能(第一篇) 发布时间:2020-10-17 14:20:03 来源:脚本之家 阅读:96 作者:erdouzhang 效果图如下所示: html: 我的好友 张三 李四 ...

  4. 仿QQ好友列表,QListWidget!

    仿QQ好友列表, 设计逻辑: 设计qqItem类,再添加到widget中: 设计时布局等可以直接在ui中设计:内容设计通过代码实现: qqItem.cpp #include "qqitem. ...

  5. android 仿qq好友动态,Android UI仿QQ好友列表分组悬浮效果

    本文实例为大家分享了Android UI仿QQ好友列表分组悬浮效果的具体代码,供大家参考,具体内容如下 楼主是在平板上測试的.图片略微有点大,大家看看效果就好 接下来贴源代码: PinnedHeade ...

  6. android 仿qq好友列表分组效果及联系人分组效果

     历史记录仿QQ好友列表的动态效果 以及联系人的分组效果 QQ朋友分组的功能做的不错,大家都很认可,那么到底他的分组并且滑动的时候,标题能停留在顶部是如何实现的呢?今天从网上搜索了一下资料,自己运行了 ...

  7. qq列表展开多个html代码,JS仿QQ好友列表展开、收缩功能(第二篇)

    在上篇的基础上继续完善,点击一个li元素,其他li元素上的类名清除掉. 效果图如下所示: js: window.onload = function(){ var list = document.get ...

  8. ExpandableListView仿QQ好友列表

    本例中,对ExpandableListView中的数据进行了封装,分为两个JavaBean,一个为Group类表示组信息,一个Child类表示该组下子列表信息: Group: public class ...

  9. java如何实现qq分组_Android仿QQ好友列表分组实现增删改及持久化

    Android自带的控件ExpandableListView实现了分组列表功能,本案例在此基础上进行优化,为此控件添加增删改分组及子项的功能,以及列表数据的持久化. Demo实现效果: GroupLi ...

  10. Android仿QQ好友列表分组实现增删改及持久化

    Android自带的控件ExpandableListView实现了分组列表功能,本案例在此基础上进行优化,为此控件添加增删改分组及子项的功能,以及列表数据的持久化. Demo实现效果:     Dem ...

最新文章

  1. 新风系统风速推荐表_家用新风常用管道规格和对应风量推荐值
  2. tensorflow 语音识别_调研报告|在线语音识别改进方法之序列区分性训练
  3. 解决打开WORD错误报告问题
  4. 【LeetCode-面试算法经典-Java实现】【002-Add Two Numbers (单链表表示的两个数相加)】...
  5. c语言求树上节点的双亲,用非递归算法求二叉树叶子结点的c语言代码怎样写?...
  6. BestCoder Round #77 (div.2)解题报告
  7. 深度技术 Windows 7 SP1 x64 极速装机版 V2013.05
  8. 贯彻落实83号文,超图“互联网+不动产”再升级
  9. 抛物型偏微分方程的Crank-Nicolson 方法; Richardson 外推法;紧差分法
  10. leaflet maxZoom突破18
  11. 创基MIFI转换器轻松上网不是难事
  12. Adobe Lightroom Classic 2021(LR 2021)
  13. Java和C++基本类型与语法的区别
  14. 使用java8新特性stream流实现获取String集合中最长的元素
  15. 仿人民日报客户端app报纸版面-Android
  16. 高数笔记(十八):对弧长的曲线积分(第一类线积分),对坐标的曲线积分(第二类曲线积分),格林公式及其应用,平面上曲线积分与路径无关的条件
  17. matlab 堆排序
  18. 【PHP】如何提高网页加载速度?
  19. vivo与蔡司开启全球影像战略合作;咖世家咖啡与瑞士莲跨界合作快闪店 | 美通企业日报...
  20. 讯飞AIUI+唤醒,导致唤醒监听报错10108

热门文章

  1. CAD学习笔记中级课【模板样式】
  2. 世界和平 - 中国国际友好城市数据集
  3. VL1_四选一多路器(完整RTL、Testbench和覆盖率)
  4. 问题 C: [入门OJ]和||
  5. hal linux 手册_Linux服务之:haldaemon服务 | 旺旺知识库
  6. 网线之RJ45接口定义及网线线序
  7. java生成二维码并导出成Excel
  8. 一个免费、大小仅几MB但超好用的卸载工具——Geek Uninstaller
  9. foxmail的邮局和端口_Foxmail如何进行POP、SMTP设置(pop)
  10. 开源遥感软件(未完待续)