Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Ciclo for to...next

  1. #1

    Ciclo for to...next

    Sto creando un programma che, inserendo file mp3, salva nel database il nome e la path. Per facilitarne l'uso all'utente ho inserito la proprietà multiselect dell'oggetto filelistbox su "2-extended" e poi uso il ciclo for to...next per ripetere le azioni su tutti i file selezionati. NON FUNZIONA!!!
    il codice che ho inserito è questo:


    codice:
    Private Sub command1_click()
    Dim i
    i = File1.ListIndex
        If File1.ListIndex <= 0 Then
            MsgBox "selezionare file"
        Else
            If Command1.Caption = "Aggiungi" Then
                For i = 0 To File1.ListIndex - 1
                    Data1.Recordset.AddNew
                    Text1.Text = File1.FileName
                    Text2.Text = "Sconosciuto"
                    Text3.Text = "Sconosciuto"
                    Text4.Text = "Sconosciuto"
                    Text5.Text = "Sconosciuto"
                    Label4.Caption = File1.Path
                    Command1.Caption = "Annulla"
                    Data1.Recordset.Update
                    Command1.Caption = "Aggiungi"
                Next
            Else
                Data1.Recordset.CancelUpdate
                Command1.Caption = "Aggiungi"
            End If
        End If
    End Sub
    altri mi hanno detto che devo usare come condizione di uscita dal ciclo il raggiungimento dell'ultimo file, ma non so come codificarlo!

    Per favore aiuto!

    :master:
    ahio! mi hai graffiato...GATTO DI M....A

  2. #2
    ci sono un paio di errori:
    ListIndex ti ritorna il file corrente(quello con il bordo a puntini) non quello selezionato (quello in blu per intendeci)
    Per vedere quali sono i file selezionati devi scorrere da 0 a list count (che indica il numero di file presenti nel filelistbox), poi testi selected per vedere se il file è selezionato.
    Ti invio un codice di esempio, ti fà un msgbox per tutti i file selezionati.

    codice:
    Dim i As Integer
    For i = 0 To File1.ListCount - 1
       If File1.Selected(i) Then
          MsgBox File1.List(i)
       End If
    Next i

  3. #3
    Grazie mille DeBe99!
    è proprio quello che mi serviva! sei un grande!!!
    :mavieni: :mavieni: :mavieni: :mavieni: :mavieni: :mavieni:

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.