如题:如何将多个数据表填充到listview当中显示,并每次click其中的一个item时,只打开相应一个数据表?希望各位大侠给说仔细点,偶是处学者!

解决方案 »

  1.   

    你是要排列不同表的表名还是里面的数据?如果是表名简单
    如果是数据,你每个表里面的数据格式是一样的吗?用两个listview不是更好?一个列表名,一个列数据
      

  2.   

    用表名做item.key ,打开只要  
    open "select * from " & item.key" 就可以了
      

  3.   

    '添加 Access 数据库中的用户表到 Listview 中,使用请引用DAO
    '参数:数据库名称,ListView控件
    '返回:无
    Public Sub AddTableToListView(ByVal strDBName As String, ByRef lvw As ListView)
        Dim daoDB           As Database
        Dim objTable        As TableDef
        Dim itemX           As ListItem
        
        Set daoDB = OpenDatabase(strDBName)
        lvw.ListItems.Clear
        
        For Each objTable In daoDB.TableDefs
            If objTable.Attributes = 0 Then Set itemX = lvw.ListItems.Add(, objTable.Name, objTable.Name)
        Next
        
        daoDB.Close
        
        Set daoDB = Nothing
        Set itemX = Nothing
    End Sub'单击ListView控件中的Item事件,打开对应的数据表Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
        
        Dim daoDB           As Database
        Dim rsTemp          As Recordset
        
        Set daoDB = OpenDatabase(strDBName)           'strDBName  数据库名称
        Set rsTemp = daoDB.OpenRecordset(Item.Key)    '其他代码。
    End Sub
      

  4.   

    完全可以实现的,
    第一次填充完数据以后
    再找到第二个表时,写入数据时,listview.ListItems.Count 就能知道数据写到多少行了,然后+1从下面接着写入
    点击后,打开相应的数据表,就困难点了,具体的你说清楚一些,LISTVIEW点击一行时,lvwlist.SelectedItem.ListSubItems (1)
    可以选中的任意数据进行处理,要是打开一个表,就得知道你这一行的数据对应哪个表的数据。
    我想知道,你为什么要这样做,有什么意义啊?
    我用LISTVIEW控件做了一年多,这个控件非常好用,灵活,我感觉比自动绑定数据的强多了
      

  5.   

    to  liang80318(小亮):你用那么久啊 ?!那再问你个问题,在listview中,假如表中有四个列表头,每点击一次一个列头,表中数据就按照列表头的字段排序,这个功能怎么做啊?写出代码啊 !