CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

listView的InsertItem问题

楼主hrblg313()2005-03-08 09:43:34 在 VC/MFC / 基础类 提问

icon形式的listView  
   
  1.用m_List.InsertItem(i,strMsg,i);形式可以正常显示  
  用下面的语句却没什么都不显示,谁知道问什么?  
  LVITEM   mItem;  
  mItem.mask   =   LVIF_TEXT   |   LVIF_IMAGE;  
  mItem.iItem   =   i;  
  mItem.pszText   =   strMsg.GetBuffer(0);  
  mItem.iImage   =   i;  
  m_List.InsertItem(&mItem);  
   
  2.用SendMessage()方式InsertItem该怎么写?(icon形式的listView)  
   
  问题点数:100、回复次数:5Top

1 楼wfqiu(阿____/\oo/\____F)回复于 2005-03-08 09:58:29 得分 40

请加入     mItem.iSubItem   =   0;Top

2 楼guangsan(丑草)回复于 2005-03-08 10:18:38 得分 50

1、如果是想实现类似于acdsee一样的缩略图显示,可参考  
        http://www.codeproject.com/listctrl/thumbnail.asp  
        可实现任何格式的图片在listctrl中显示  
  2、关于消息,见我后面的帖子  
  Top

3 楼mousefj(冯杰)回复于 2005-03-08 10:18:57 得分 10

我的一段成功代码,提供参考  
  LVITEM   m_lvitem;                           //元素结构  
  int   m_itemCount;                           //已有元素个数      
   
  LPTSTR   lptstr=new   TCHAR[VarNameStr.GetLength()+1];//临时指针  
  m_itemCount=m_VarList.GetItemCount();                           //获取已有元素个数  
  //设置元素的开始位置  
  m_lvitem.iItem=0;                                                                   //  
  m_lvitem.mask=LVIF_TEXT;  
  if(m_itemCount>0)  
        m_lvitem.iItem=m_itemCount;  
  //为结构赋值(变量名)  
  m_lvitem.iSubItem=0;  
  _tcscpy(lptstr,   VarNameStr);  
  m_lvitem.pszText=lptstr;  
  //插入表中  
  m_VarList.InsertItem(&m_lvitem);  
  m_lvitem.iSubItem=1;  
  _tcscpy(m_lvitem.pszText,VarAddressStr);  
  m_VarList.SetItem(&m_lvitem);  
  m_lvitem.iSubItem=2;  
  _tcscpy(m_lvitem.pszText,VarIDStr);  
  m_VarList.SetItem(&m_lvitem);  
  m_lvitem.iSubItem=3;  
  _tcscpy(m_lvitem.pszText,VarType);  
  m_VarList.SetItem(&m_lvitem);  
  m_lvitem.iSubItem=4;  
  _tcscpy(m_lvitem.pszText,VarNameStr);  
  m_VarList.SetItem(&m_lvitem);Top

4 楼guangsan(丑草)回复于 2005-03-08 10:21:16 得分 0

在VC++中想加入自定义消息,以下方法可供参考   ……    
   
  1   首先定义消息:例如    
   
  define   WM_MYMESSAGE   (WM_USER+100)  
  2   在.H文件中,加入消息响应函数,如:   LONG   OnMyMessage(WPARAM   w,LPARAM   l);    
  该函数有规定的格式:LONG   Function_Name(WPARAM   w,LPARAM   l);    
  3   加入消息响应宏  
   
  在响应该消息的类中,在消息响应块中,   BEGIN_MESSAGE_MAP(CAboutDlg,   CDialog)  
  //{{AFX_MSG_MAP(CAboutDlg)  
      //   No   message   handlers  
  //}}AFX_MSG_MAP  
  END_MESSAGE_MAP()  
  加入以下语句:ON_MESSAGE(WM_MYMESSAGE,   OnMyMessage)  
  成为如下样式:BEGIN_MESSAGE_MAP(CAboutDlg,   CDialog)    
  //{{AFX_MSG_MAP(CAboutDlg)    
  ON_MESSAGE(WM_MYMESSAGE,OnMyMessage)    
  //}}AFX_MSG_MAP    
  END_MESSAGE_MAP()    
  4   在.CPP文件中,编辑消息响应函数,如下:   LONG   CMyClass::OnMyMessage(WPARAM   w,   LPARAM   l)    
  {    
       
  //此处添加你想要的插入代码,也可能需要重绘你的listctrl  
   
  }    
   
  5   大功告成  
   
   
  以上文本摘自http://www.vckbase.com/document/viewdoc/?id=1336Top

5 楼hrblg313()回复于 2005-03-08 10:41:54 得分 0

万分感谢  
  问题1解决  
  加个  
  mItem.iSubItem   =   0;  
  就可以了  
   
  问题2,我想知道用MFC原有的消息怎么写,自己定义消息似乎有点麻烦  
  Top

相关问题

  • ListView?
  • 在LISTVIEW中增加一行InsertItem的问题
  • listview
  • treeview\listview?????????
  • listview clilk
  • ListView!TreeView!
  • ListView问
  • listview的问题
  • ListView,有脾气.
  • ListView的用法?

关键词

  • 函数
  • 消息
  • lvitem
  • mitem
  • insertitem
  • isubitem
  • varlist
  • onmymessage
  • itemcount
  • tcscpy

得分解答快速导航

  • 帖主:hrblg313
  • wfqiu
  • guangsan
  • mousefj

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo