CListCtrl的简单使用

1,定义和绑定

CListCtrl m_CListCtrl;

。。。

void CMyDialog::DoDataExchange(CDataExchange*
pDX)
{
  CDialog::DoDataExchange(pDX);
  DDX_Control(pDX, IDC_LIST2,
m_CListCtrl);
}

2,添加列

BOOL CMyDialog::OnInitDialog()
{

  CDialog::OnInitDialog();

  m_CListCtrl.InsertColumn(0,_T("Mode"),LVCFMT_LEFT,50,-1);
  m_CListCtrl.InsertColumn(1,_T("Name"),LVCFMT_LEFT,70,-1);
  m_CListCtrl.InsertColumn(2,_T("IP"),LVCFMT_LEFT,100,-1);

  return TRUE;
}

3,添加数据

int row=0;
for(
  std::vector<SEARCH_RESP>::iterator
iterator=service.m_tDeviceList.begin();
  iterator!=service.m_tDeviceList.end();
  iterator++
)
{
  int
nRow=pCMyDialog->m_CListCtrl.InsertItem(row++,_T("L"));  //添加行
  pCMyDialog->m_CListCtrl.SetItemText(nRow,1,utf8_decode(iterator->dwDeviceID).c_str());  //设置数据
  pCMyDialog->m_CListCtrl.SetItemText(nRow,2,utf8_decode(iterator->szIpAddr).c_str());
}

时间: 2024-10-13 13:00:34

CListCtrl的简单使用的相关文章

MFC CListCtrl的简单用法

一篇对CListCtrl用法介绍较详细的文章: http://www.cnblogs.com/wind-net/archive/2012/10/30/2745817.html CListCtrl的最基本使用方法: 定义样式 DWORD dwStyle = m_listctrl.GetExtendedStyle(); dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl) dwStyle |= LVS_EX_GRIDLI

VC CListCtrl 第一列列宽自适应

原文链接: http://www.cnblogs.com/sephil/archive/2011/04/03/2004384.html 今天用VC写工具的时候用到CListView,并且ListCtrl的第一列需要自动拉伸,以占满空白区域 Delphi做这个设置是很容易的,只要将Column的AutoSize设置为True就可以了 不过VC/SDK的AutoSize其实是根据Item的文本长度来自动设置Column Width,跟我的要求不符,只好自己实现了 其实很简单,就是觉得麻烦... vo

sqlLite 接口的使用 包含MFC控件CListCtrl代码示例

SqlLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C#.PHP.Java等,还有ODBC接口,同样比起Mysql.PostgreSQL这两款开源的世界著名数据库

MFC总结之CListCtrl用法及技巧(二)

续第一篇:MFC总结之CListCtrl用法及技巧(一) http://blog.csdn.net/zwgdft/article/details/7560592 本篇重点介绍:禁止拖动表头.让第一列居中显示.设置行高与字体.虚拟列表技术.点击表头时进行归类.向上与向下移动.动态调整大小问题.避免闪烁问题. 6.禁止拖动表头 重载OnNotify消息响应函数,屏蔽两个消息通知码:HDN_BEGINTRACKW 和HDN_DIVIDERDBLCLICKW.示例如下: BOOL CXXXX::OnNo

防止CListCtrl闪烁的几种方法

1. 使用SetRedraw禁止窗口重绘,操作完成后,再恢复窗口重绘 m_ctlList.SetRedraw(FALSE); //以下为更新数据操作 //-- //恢复窗口重绘 m_ctlList.SetRedraw(TRUE); 2. 使用LockWindowUpdate禁止窗口重绘,操作完成后,用UnlockWindowUpdate恢复窗口重绘 m_ctlList.LockWindowUpdate(); //以下为更新数据操作 //-- //恢复窗口重绘 m_ctlList.UnlockWi

不用splitter控件 简单实现对mfc对话框的分割的方法

不用splitter控件  简单实现对mfc对话框的分割的方法 直接贴上源代码主要部分吧 这个是基于对话框的工程 进行对话框的分割实现 只是相应了三个消息函数,看一下就会明白的 我空间资源里边有现成的工程代码可以下载运行 .cpp 文件 [cpp] view plaincopy // spliteDlg.cpp : implementation file // #include "stdafx.h" #include "splite.h" #include &quo

MFC CListCtrl 将一个列表的选中项添加到另一个列表

MFC CListCtrl 将一个列表的选中项添加到另一个列表, 用VC6.0实现: 简单记录一下自己的学习历程, 和大家分享,如果对你有用,我很高兴. 1.新建一个基于对话框的工程(Dialog-Based) 1.1 新建项目 打开VC6.0 -> File -> New -> Projects -> MFC AppWizard[exe] -> 工程名CListCtrlEg -> 点击OK ->Dialog based -> Finish -> OK

CListCtrl的Report风格自绘

原文链接: http://jingyan.baidu.com/article/5bbb5a1b38af1113eaa17910.html CListCtrl是MFC中运用最广泛的控件之一,很多软件都有CListCtrl的身影,但是对于CListCtrl的自绘,很多朋友都犯了难,网上虽然有很多人讲解怎么自绘,但是实现出的效果都不是太友好,本篇讲解CListCtrl的Report自绘,对于LVS_ICON风格,我们采用窗口模拟进行绘制.先说一下Report重绘的注意事项. 方法/步骤 1 CList

mfc的ClistCtrl控件列的排序

在网上看了许多排序的方法,都没看懂,初学者的悲剧,然后就自己弄了个,请大家指正. ClistCtrl控件的行带着一个结构体,不过那结构体不好懂,看得眼花缭乱.好多也弄不明白,就自己写了个结构体,把一行的数据全写入结构体中, 交换两结构体的数据就简单多了. typedef struct { wchar_t id[6];  //编号 wchar_t name[10]; //姓名 wchar_t sex[2];        //性别 int age;              //年龄 wchar_