Common dialog : multiselection

Soyez le premier à donner votre avis sur cette source.

Vue 4 629 fois - Téléchargée 234 fois

Description

PAS BESOIN DE TELECHARGER LE ZIP, JE N'AI PAS UPLOADER LE CODE, IL SE RESUME A LA PROCEDURE QUI EST DONEE PLUS BAS.

J'ai vu une question la dessus dans le forum, et je me suis dit que ca pourrait etre interressant de mettre un exemple dans les sources, plutot que dans le forum.

ya deux chose importantes a savoir :

.flags=cdlOFNAllowMultiselect or cdlOFNFileMustExist or ***cdlOFNExplorer***

1) les nom de fichier seront séparés par un null (chr(0))
"c:\windows\file1.ext file2.ext file3.ext"

2) si tu fait une selection assez importante avec beaucoup de nom de fichier, il va falloir que tu penses a ajuster le parametre MaxFileSize.

créez un nouveau projet
crééz un bouton ou vous appelez la prcedure addfiles bricolée un peu plus bas
crééz une liste "list1"
créez un common dialog "cd"

et collez ceci dans form1:

Source / Exemple :


Private Sub addfiles()
Dim str         As String
Dim pos         As Long

Dim Path1       As String

    With cd
        .DialogTitle = "Ouvrir fichiers "
        .DefaultExt = "*.*"
        .Filter = "Tout fichiers|*.*"
        .InitDir = App.Path
        .Flags = cdlOFNAllowMultiselect Or cdlOFNExplorer Or cdlOFNFileMustExist
    End With

    cd.ShowOpen
    
        str = cd.FileName
        pos = InStr(str, Chr(0))
        
        If pos = 0 Then
            List1.AddItem cd.FileName
            Exit Sub
        End If
        
        Path1 = Left(str, pos - 1)
        
        Do
            str = Mid(str, pos + 1, Len(str))
            pos = InStr(str, Chr(0))
            
            If pos <> 0 Then
                If InStr(Mid(str, 1, pos - 1), ":") = 0 Then
                    List1.AddItem Path1 & "\" & Mid(str, 1, pos - 1)
                Else
                    List1.AddItem Mid(str, 1, pos - 1)
                End If
            Else
                List1.AddItem Path1 & "\" & str
                Exit Do
            End If
        Loop
    
End Sub

Conclusion :


Le flag CDLOFNEXPLORER Permet maintenant l'affichage des la fenetre standard de windows.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
98
Date d'inscription
mercredi 5 novembre 2003
Statut
Membre
Dernière intervention
8 janvier 2005

ouahhh trop content sa marche merci beaucoup 10/10
Messages postés
98
Date d'inscription
mercredi 5 novembre 2003
Statut
Membre
Dernière intervention
8 janvier 2005

si tu pouvais y arriver avec un autre flags la je mettrai 10/10
voilà
a+
merci d'avance
nessx
Messages postés
98
Date d'inscription
mercredi 5 novembre 2003
Statut
Membre
Dernière intervention
8 janvier 2005

salut
oui dommage que sa marche pas avec un autre flags genre 9194495 ou autre car s'aurait était mieu
enfin bravo quand meme
merci d'avance
a+
Nessx
Messages postés
25
Date d'inscription
jeudi 15 août 2002
Statut
Membre
Dernière intervention
21 juillet 2004

si le flag cdlOFNExplorer s'ajoute au code, le programme ne sera plus valable. il faut reformuler le code.
Messages postés
117
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
27 août 2005

c noté Renfield!

Enfin moi je m'en sert pas, alors...
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.