例子如下名称1           名称2  //名称2是个下拉列表,里面有已经文字(中文),假设有如下几项{"选项1","选项2","选项3"}
strEventName    代码如下
m_wndList.InsertItem(i, strEventName);  //m_wndList是CGridListCtrl类型,这里表示插入一项,返回成功//接下来给名称2,也就是下拉表赋值
m_wndList.SetItemText(i, 1, touchName); //touchName是我指定的内容,和下拉表已有的项一致,返回成功
但是在最终效果里,有的下拉列表操作成功了,有的却是空白。???我个人想法是,是否能先取到下拉表的组件,然后直接控制索引

解决方案 »

  1.   

    不知道你这个CGridListCtrl是怎么实现的,不过应该有的,你可以看看你这个CGridListCtrl里的下拉列表是怎么实现的么,找到后直接调用就是
      

  2.   

    简化成这样CGridListCtrl m_wndList
    我对这个控件操作
    for()
    {
      m_wndList.InsertItem
      m_wndList.SetItemText(i, 4, "X");
    }第一次循环两个都被写上,第二次后的循环,InsertItem有插入,SetItemText就没效果了??
      

  3.   

    还有这样的诡异for()
    {
      if..continue; //如果这句被执行,后面Set就不行
      m_wndList.InsertItem
      m_wndList.SetItemText(i, 4, "X");
    }
      

  4.   

    for()
    {
    //如果这句被执行,那么在下一次条件为真进行执行continue
    //以后的语句时,只有insert会成功,SetItemText无效

      if..continue; 
      m_wndList.InsertItem
      m_wndList.SetItemText(i, 4, "X");
    }
      

  5.   

    http://topic.csdn.net/t/20030621/17/1942133.html
    在这个帖子里,遇到和我一样的问题但是最后的解决方法没看懂(简单的一句话),在倒数第二楼还希望高手指点
      

  6.   

    m_wndList.InsertItem  
    这行就这样?连分号都不用?