现在遇到这个难题,网上看到很多都是重写控件,但我还没试过自己重写控件,希望高人指点一下,最好贴一下大概的代码上来,我分数不多,不好意思

解决方案 »

  1.   

    你是要每一行的某一列都嵌入一个控件呢,还是鼠标点击某一单元时,想用ComboBox进行内容修改呢?
      

  2.   

    重写CListCtrl类,添加CComboBox作为它的子控件,Codeproject上的XListCtrl好像就可以了
      

  3.   

    写个CListCtrl的扩展类,给你一个功能强大的例子,上面有差不多你要的所有功能
    http://www.codeproject.com/KB/list/xlistctrl.aspx
      

  4.   

    我想在每一行都嵌入一个Combo Box,不用相应鼠标单击
      

  5.   

    那个例子很好啊,你慢慢看懂就会学到很多啦。
    你也可以看看这个
    http://www.codeguru.com/Cpp/controls/listview/editingitemsandsubitem/article.php/c979/
      

  6.   

    重载一个ListCtrl 
    自定义每一列的属性,   比如   readonly,   combocolumn之类(自己添加的) 
    点击左键的时候判断鼠标在哪里   
    MFC自带的HitTest是判断在哪一行的 
    你写个HitTestEx附加判断在哪一列(在哪一行你就调用HitTest) 
    这样你就可以知道是不是点击在combocolumn列了 
    根据行数   烈数     得到一个   CRect 
    在这个位置动态创建一个ComboBox(重写一个类CMyComboBox) 在这个ComboBox创建的时候向父窗口发送一个自定义消息 
    父窗口相应这个自定义消息往ComboBox里面添加字符串 还有很多后续工作     大概实现就这样