请问如何能用Listview显示数据库中的记录,并在前面加一单选框,主要是达到可以选取多来记录来打印或导出,只对前面打了勾就发生打印或其它操作

解决方案 »

  1.   

    顯示記錄﹕
    Dim itmX As ListItem
      
     If rs1.State = 1 Then rs1.Close
     rs1.Open "select * from telrecord ", conn1, adOpenKeyset, 3 ListView1.ListItems.Clear
     Do While Not rs1.EOF      Set itmX = ListView1.ListItems.Add(, , rs1.Fields("name"))
          itmX.SubItems(1) = rs1.Fields("telphone")
          itmX.SubItems(2) = rs1.Fields("time")
          Set itmX = Nothing
          rs1.MoveNext
     Loop
    加選框﹐個人認為屬性中允許check。
    然后再寫sql語句進行導出即可。
      

  2.   

    对,是可以加CHECK,但是在程序中或者说在SELECT语句中如何能判别显示在控件中的那些数据哪些是前面已打上勾的了,LISTVIEW控件是否本身有这种什么属性方法支持的,还请您指明!.
      

  3.   

    Private Sub Command1_Click()
      Dim itmX As ListItem
      Set g_rst = New ADODb.Recordset
      If g_rst.state = 1 Then g_rst.Close
      g_rst.Open "select * from rtu ", g_ado, adOpenKeyset, 3 LswDXF.ListItems.Clear
     LswDXF.CheckBoxes = True'''''''在前面加一单选框
     Do While Not g_rst.EOF      Set itmX = LswDXF.ListItems.Add(, , g_rst.Fields("name"))
          itmX.SubItems(1) = g_rst.Fields("telphone")
          itmX.SubItems(2) = g_rst.Fields("code")
        
          Set itmX = Nothing
          g_rst.MoveNext
     LoopEnd Sub''''''显示在控件中的那些数据前面已打上勾的了
    Private Sub Command2_Click()
         Dim ss()
         Dim count As Integer
         For i = 1 To LswDXF.ListItems.count
            With LswDXF
                If .ListItems(i).Checked Then
                    ReDim Preserve ss(count)
                    ss(count) = .ListItems(i).Text
                    count = count + 1
                End If
            End With
         Next
    End Sub