Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    [VB6] Listview e checkbox

    Salve amici

    Una domandina semplice semplice credo:
    ho una Listview con dei check box ogni riga,ora io vorrei che questi benedetti checkbox si comportassero come dei radio button
    nel senso che si abilitano soltanto uno alla volta e' possibile?

    codice:
    Private Sub lst_ItemClick(ByVal Item As MSComctlLib.ListItem)
    lst.SelectedItem.Checked = True
    End Sub
    questo codice mi cheka il checkbox ,ma facendo click su un'altra riga vorrei il comportamento descritto sopra cioe' deselezionare quello true e selezionare il nuovo.
    Spero di essere stato chiaro
    Grazie in anticipo

  2. #2
    1-Fai un For each degli Item della List
    2-Se l' item è chekkato, scekkalo ...
    3-Cekka il SelectedItem, cioè quello che stai cliccando

  3. #3

    re

    ho fatto cosi ma non funziona:

    codice:
    Private Sub lst_ItemClick(ByVal Item As MSComctlLib.ListItem)
    
    Dim check As ListView
    For Each check In lst
    check.SelectedItem.Checked = False
    Next
    
    lst.SelectedItem.Checked = True
    End Sub
    Ma non funziona.
    dove e l'errore?

  4. #4
    codice:
    dim Item as Listview.Item
    
    For each Item in Listview.items
         Itam.checked = false
    Next

  5. #5

    non va

    non va
    Errore di compilazione
    tipo non corrispondente.
    ho anche corretto l'errore di scrittura (itam )
    Grazie per l'aiuto

  6. #6

    re

    Niente
    ancora non mi va
    Help me

  7. #7
    Prova a salvarti l'indice del l'elemento selezionato: quando selezioni un nuovo item deselezioni quello precedentemente selezionato.

    codice:
    Private Sub lst_ItemClick(ByVal Item As MSComctlLib.ListItem)
    Dim vecchioSelezionato As Integer
    lst.ListItems.Item(vecchioSelezionato).Checked = False
    lst.SelectedItem.Checked = True
    vecchioSelezonato = lst.SelectedItem.Index
    End Sub
    L'aquilone è simbolo che l'uomo vuole andare più su

  8. #8

    re

    non mi funziom nemmeno cosi

  9. #9
    Prova con questo: a funziona! Ho controllato anche l'evento ItemCheck

    codice:
    Dim vecchioSelezionato As Integer
    
    Private Sub ListView1_ItemCheck(ByVal Item As MSComctlLib.ListItem)
    ListView1.ListItems.Item(vecchioSelezionato).Checked = False
    vecchioSelezionato = Item.Index
    End Sub
    
    Private Sub listview1_ItemClick(ByVal Item As MSComctlLib.ListItem)
    ListView1.ListItems.Item(vecchioSelezionato).Checked = False
    ListView1.SelectedItem.Checked = True
    vecchioSelezionato = ListView1.SelectedItem.Index
    End Sub
    L'aquilone è simbolo che l'uomo vuole andare più su

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.