我用list box建了个表,在表的最后一行我希望是passwd,而且是能输入的!我该怎么做呢?如
IP       server name         passwd
x            x               文本框
x代表是会显示的,       文本框是要输入的密码
我该怎么做?

解决方案 »

  1.   

    这个最好使用listctrl,然后重新绘制第3列,允许编辑呀
      

  2.   

    这个最好使用listctrl,Report方式。
      

  3.   

    我用的就是report方式,我想问的就是怎么做才能允许编译
      

  4.   

    取 ListCtrl 单元格位置,然后自己创建 Edit Control,移动 Edit 到这个位置。
      

  5.   

    http://www.codeproject.com/listctrl/listeditor.asp
      

  6.   

    请问:取ListCtrl单元格位置,然后自己创建 Edit Control,移动 Edit 到这个位置。
    这几步具体用到什么函数啊?我是菜鸟,很多不懂,还请帮帮忙
      

  7.   

    ListView_GetSubItemRect
    ListView_GetItemTextSetWindowPos
      

  8.   

    我是在太菜了,不会弄!请问怎么得到list control窗口的句柄?
      

  9.   

    GetDlgItem(ID_LIST)->GetSafeHwnd();
      

  10.   

    GetDlgItem(ID_LIST)->m_hWnd;
    没事的,以后会厉害起来的
      

  11.   

    我修正一下问题:应该是如何使list contrl 控键中作出的表格是可编辑的!首先list contrl的风格是report,且有网格(SetExtendedStyle(LVS_EX_GRIDLINES))
    现在有了一个表格!实现问题只要做几件事:
    CRect rcEdit;
    ListView_GetSubItemRect(GetSafeHwnd(), m_ptEditting.x, m_ptEditting.y, LVIR_LABEL, &rcEdit);
    m_pWndEdit->MoveWindow(&rcEdit);       //得到edit窗口
    m_pWndEdit->SetWindowText(GetItemText(m_ptEditting.x, m_ptEditting.y));
    m_pWndEdit->ShowWindow(SW_SHOW);      //显示窗口
    m_pWndEdit->SetSel(0, -1);
    m_pWndEdit->SetFocus();
    CListCtrl::SetItemText(m_ptEditting.x, m_ptEditting.y, str);    //把值填入表格
    m_pWndEdit->ShowWindow(SW_HIDE);       //隐藏窗口