我现在在做一个listview控件的程序,现在已经把数据库的数据显示在listview里了,不过现在想通过点击listview上任意一条数据,就把对应的数据库内容传到窗口对应的text中。
说明:listview控件上只显示IK.DMB中表“rhd”的字段“Twxt1”和“Twxt2”的内容,表中还有“Twxt3”和“Twxt4”等字段,而且字段“Twxt1”有重复的内容,请问各位高人帮忙,先谢了!

解决方案 »

  1.   

    listview控件显示后就与数据库无关了,你到底要显示第几列的数据没说清楚,是同一行所有的数据,还是指定那列没说清楚,是放到一个Text中还是分别放到几个里面,也没说清楚
      

  2.   

    我给你写个例子参考一下吧
    Private Sub Form_Load()
        i = 0
        ListView1.View = lvwReport '显示风格
        ListView1.Appearance = ccFlat '平面显示
        ListView1.BorderStyle = ccNone '外框风格
        ListView1.LabelEdit = lvwManual '不允许即时编辑标签
        ListView1.MultiSelect = True '允许多选
        ListView1.GridLines = True '显示网格线
        ListView1.FullRowSelect = True '整行选取
        ListView1.FlatScrollBar = False '使用三维的滚动条
        ListView1.ColumnHeaders.Clear '清除默认列标头
        ListView1.ColumnHeaderIcons = ImageList1 '设置列标头图象集合
    '以下为列标头设置
        ListView1.ColumnHeaders.Add , , "状态", ListView1.Width / 4
        ListView1.ColumnHeaders.Add , , "姓名", ListView1.Width / 4, lvwColumnCenter
        ListView1.ColumnHeaders.Add , , "手机", ListView1.Width / 4, lvwColumnCenter
        ListView1.ColumnHeaders.Add , , "地址", ListView1.Width / 4, lvwColumnCenter'以下为添加数据
        ListView1.ListItems.Add , , "待发", , 1 '状态
        ListView1.ListItems.Item(1).SubItems(1) = "张三" '姓名
        ListView1.ListItems.Item(1).SubItems(2) = "123456789" '手机
        ListView1.ListItems.Item(1).SubItems(3) = "学院路" '地址
        ListView1.ListItems.Add , , "待发", , 2 '状态
        ListView1.ListItems.Item(2).SubItems(1) = "李四" '姓名
        ListView1.ListItems.Item(2).SubItems(2) = "987654321" '手机
        ListView1.ListItems.Item(2).SubItems(3) = "学清路" '地址
        ListView1.ListItems.Add , , "待发", , 3 '状态
        ListView1.ListItems.Item(3).SubItems(1) = "王五" '姓名
        ListView1.ListItems.Item(3).SubItems(2) = "999999999" '手机
        ListView1.ListItems.Item(3).SubItems(3) = "清华东路" '地址
    End SubPrivate Sub ListView1_Click()
        Text1.Text = ListView1.SelectedItem.SubItems(1)
    End Sub
      

  3.   

    是在listview控件选中的那一行数据所对应的数据库中的那一行完整数据,Text控件是根据数据库中对应的字段设的,共6 个即:Text1-Text6
      

  4.   

    数据库已连接,我用下面的方法不能实现
    Dim appdisk$
    Dim adoConn As ADODB.Connection
    Dim adoRes As ADODB.Recordset
    Dim nameCount As Integer'Set adoRes = adoConn.Execute("SELECT * FROM rhd WHERE Text1 ='" & "'AND Text2 ='" & ListView1.SelectedItem.text & "'", , adCmdText)Text1.Text=adoRes!Text1
    Text2.Text=adoRes!Text2
    ....
    Text6.Text=adoRes!Text6
    ......
      

  5.   

    对不起,应该是下面这段
    数据库已连接,我用下面的方法不能实现
    Dim appdisk$
    Dim adoConn As ADODB.Connection
    Dim adoRes As ADODB.Recordset
    Dim nameCount As IntegerSet adoRes = adoConn.Execute("SELECT * FROM rhd WHERE Text1 ='" & "'AND Text2 ='" & ListView1.SelectedItem.text & "'", , adCmdText)Text1.Text=adoRes!Text1
    Text2.Text=adoRes!Text2
    ....
    Text6.Text=adoRes!Text6
    ......
      

  6.   

    我再说一遍:与数据库无关
    一下代码可以参考
    Private Sub ListView1_Click()
        Text1.Text = ListView1.SelectedItem.SubItems(0)
        Text2.Text = ListView1.SelectedItem.SubItems(1)
        Text3.Text = ListView1.SelectedItem.SubItems(2)
        Text4.Text = ListView1.SelectedItem.SubItems(3)
        Text5.Text = ListView1.SelectedItem.SubItems(4)
        Text6.Text = ListView1.SelectedItem.SubItems(5)
    End Sub
      

  7.   

    上面那个有问题
    Private Sub ListView1_Click()
        Text1.Text = ListView1.SelectedItem.Text
        Text2.Text = ListView1.SelectedItem.SubItems(1)
        Text3.Text = ListView1.SelectedItem.SubItems(2)
        Text4.Text = ListView1.SelectedItem.SubItems(3)
        Text5.Text = ListView1.SelectedItem.SubItems(4)
        Text6.Text = ListView1.SelectedItem.SubItems(5)
    End Sub