如何在ListCtrl控件中的某固定一列的每一行添加如Edit,CommBox等这样的控件?高分急请高手!

coslightyuan 2004-10-18 03:10:07
各位师兄,师姐们:
请问如何在ListCtrl控件中的某固定一列的每一行添加如Edit,CommBox等这样的控件?
谢谢!!
...全文
108 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
enoloo 2004-10-18
  • 打赏
  • 举报
回复

MFCGridCtrl 等网格控件有类似的功能.

在 listctrl 的 subitems 上创建控件和普通方式差不多, 但是要维护这些控件的状态就需要花些工夫了.

一般的方法是做一个 itemdata 的类, 这个类有个HWND 数组组合成员表示每行的控件集, 一些其他控制信息, 以及标准的状态通知接口, 该接口不一定要耦合到 listctrl 上. 对于 subitems 上不同的控件类型可以从这个类继承并封装将状态作用于 HWND 上的操作. 最后, 用 SetItemData 将这个类对象实例指针绑定到某个 item 上.

或者可以考虑模板来构造.
coslightyuan 2004-10-18
  • 打赏
  • 举报
回复
谢谢!
快乐鹦鹉 2004-10-18
  • 打赏
  • 举报
回复
以发送
caygal 2004-10-18
  • 打赏
  • 举报
回复
方法一是动态创建
方法二是隐藏一个edit、combobox

用户鼠标点击某格,根据这个格子的属性,将edit或combobox显示出来,并且提取格子的值放到edit或combobox中,编辑完成后,再将用户写到edit或combobox中的值回写到list相应的格子中。
coslightyuan 2004-10-18
  • 打赏
  • 举报
回复
我的信箱是:wg202wg_2002@163.net
谢谢!散分!!
快乐鹦鹉 2004-10-18
  • 打赏
  • 举报
回复
手头有个可编辑的列表控件的例子。提供信箱即发送。
lixiaosan 2004-10-18
  • 打赏
  • 举报
回复
http://www.codeguru.com/Cpp/controls/listview/editingitemsandsubitem/article.php/c979/

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧