Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    allora, vedo che nel tuo codice assegni alla proprietà Key dell'Item l'ID dell''elemento scrivendo in nome del recordset tra ""; beh, è sbagliato. Per trasformare in stringa i valori numerici esistono delle apposite funzioni;
    fai così:
    1. Dichiariamo una variabile di appoggio di tipo stringa
    2. le assegnamo il valore dell'id corrente preceduto da una lettera o un altro qualsiasi valore alfabetico.
    3. la assegnamo alla Key dell'item.

    Per il testo visualizzato invece ti basterà togliere i doppi apici nei quali hai scritto il recordset.

    Vedo che nel tuo codice fai un Do While sul recordset, e poi un For Next sulle sue colonne. Sinceramente non capisco l'utilità di questo secondo ciclo... potresti leggere direttamente il recordset che cicli col do.
    codice:
    Dim itm As ListItem
    Dim sItm As ListSubItem
    Dim strKey As String
        
    lstElencoTipi.View = lvwReport
        
    Dim fld As ADODB.Field
        
    Do While Not Rs.EOF
       
        For Each fld In Rs.Fields
    
           strKey = CStr(fld(0).Value)
           strKey = "K" & strKey 
           Set itm = lstElencoTipi.ListItems.Add(Key:=strKey, _
                     Text:=fld(1).Value)  
           Set sItm = itm.ListSubItems.Add(Key:="C1", Text:="qui")
           Rs.MoveNext
    
        Next
    
    Loop

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  2. #12
    Grazie. Ora "gira" :-)

    Una domanda: per la seconda colonna... è necessario specificare la chiave?


    A beneficio dei colleghi utenti del forum, ecco il codice finale:

    codice:
            Do While Not Rs.EOF
           
           strKey = CStr(Rs.Fields(0).Value)
           strKey = "K" & strKey
           Set itm = lstElencoTipi.ListItems.Add(Key:=strKey, _
                     Text:=Rs.Fields(1).Value)
           Set sItm = itm.ListSubItems.Add(Key:=strKey, _
                      Text:=Rs.Fields(2).Value)
           Rs.MoveNext
    
        Loop

  3. #13
    no, puoi tranquillamente tralasciare di specificare la chiave dei subitem.

    05.08.2005 - by alka
    Auguri all'angelo custode dei moderatori.

  4. #14
    perfetto. continuando a migliorare il mio programmino... mi chiedo: meglio la listview o meglio la dbgrid (o flexgrid) per fare le operazioni che ho indicato? [ovvero vorrei sincronizzare i movimenti della barra ai tasti freccia del controllo data]

  5. #15
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    38

    aiuto

    Ho provato ad adattare il mio codice con gli esempi del link che mi hai indicato ma, a strKey = CStr(fld(0).Value), mi da il seguente errore:
    "Object Variable or With block variable not set"

    codice:
    Private Sub Command1_Click()
    
     Dim itm As ListItem
     Dim sItm As ListSubItem
     Dim fld As ADODB.Field
     Dim strKey As String
    
    'specifica il tipo di layout della listview
     ListView.View = lvwReport
    
     Call connetti
        
     'aggiunge i nomi delle colonne
     ListView.ColumnHeaders.Add Text:="Ora Inizio"
     ListView.ColumnHeaders.Add Text:="Nome Trasmissione"
     ListView.ColumnHeaders.Add Text:="Canale"
      
     
     Rs.Open "Select OraInizio, NomeTrasmissione, Canale from epg ORDER BY Gradito"
    'aggiunge le voci in elenco
       
        Do While Not Rs.EOF
        
     strKey = CStr(fld(0).Value)
        strKey = "K" & strKey
    
        Set itm = ListView.ListItems.Add(Key:=strKey, Text:="fld(1).Value")    'riempie la listbox coi nomi
            Set sItm = itm.ListSubItems.Add(Key:=strKey, Text:="fld(1).Value")
            Set sItm = itm.ListSubItems.Add(Key:=strKey, Text:="fld(1).Value")
        
        Rs.MoveNext
      Loop
    
        Rs.Close
    AIUTO!!!
    LADY BLU...PENSACI TU!!!!

  6. #16
    Ragazzi, scusate l'intrusione inutile...... ma potreste indicarmi cosa devo aggiungere sal mio progetto per avere una ListWiev??
    Grazie!!!
    Paperina :-)

  7. #17
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    38

    componente ListView

    Paperina, devi aggiungere Dal Menu Progetto, la componente Microsoft Windows Common Controls 6!!!

  8. #18
    Grazie
    Paperina :-)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.