我使用listview控件,里面已经有很多显示的数据,我想对于第二列的某一行数据进行编辑,也就是鼠标双击它,能够有光标显示,能够进行修改,请问如何实现?

解决方案 »

  1.   

    用个文本框做到的http://atlab.cn/down/ListViewEdit.rar (4kb) 
      

  2.   

    你可以试试 text.move 属性 
    将你要修改的内容读到文本框,然后将文本框移动到你需要修改的数据上显示,修改数据
    修改完成后,在将文本框内的数据写如listview 对应的位置。
    就能够
      

  3.   

    我现在遇到的问题是什么呢?我的listview里显示的数据是我从数据库里读取出来的,总共两列数据。
    设置ListView的属性是:
    点击这个控件,按右键出现的地方设置,View:lvwReport,复选框里只有;HideSelection,LabelWrap,Enabled,Gridlines选中。
    添加到ListView里的代码是这样的:
    Dim rstGd As ADODB.Recordset
     Dim curid As Integer
     Dim numPeople As Integer
     curid = iHitKey
     numPeople = 0
     Set rstGd = g_Conn.Execute("SELECT TPName,TPPeopleNum FROM ClassTable WHERE treecID=" + CStr(curid) + "")
     Do While Not rstGd.EOF
          With lvListView
          .ListItems.Add
          .ListItems(.ListItems.Count).Selected = True
           With .SelectedItem
                .Text = Trim(rstGd.Fields("TPName"))
                numPeople = numPeople + rstGd.Fields("TPPeopleNum")
                .SubItems(1) = CStr(rstGd.Fields("TPPeopleNum"))
           End With
           rstGd.MoveNext
           
          End With
      Loop
      lvListView.ListItems.Add
    lvListView.ListItems(lvListView.ListItems.Count).Selected = True
    lvListView.SelectedItem.Text = "总人数"
    lvListView.SelectedItem.SubItems(1) = CStr(numPeople)
      rstGd.Close
      Set rstGd = Nothing
    显示出来的第二列,鼠标单击不能进入。
    请问什么原因?