Probleme avec la boite de dialogue open

nessx Messages postés 98 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 8 janvier 2005 - 26 juin 2004 à 19:21
cs_RDX Messages postés 117 Date d'inscription samedi 26 juin 2004 Statut Membre Dernière intervention 27 août 2005 - 29 juin 2004 à 23:18
Salut
Voilà ma feuille se compose d'une listbox d'un bouton et du composant common dialogue je voudrai savoir comment ouvrir plusieur fichier en meme temps et les rajouter a ma listbox

voici mon code actuelle qui ne permet de faire se que je veux

With cmd1 'utilise le dialogue avec le composant common dialogue
.Filter = "Format supporté|*.mp3;*.wma;*.wav;.*midi" 'applique un filtre pour ouvrir un fichier
.Flags = 9194495 'permet la multiselection qui ne marche pas encore
.FileName = "" 'verifie qu'aucun nom sera mis au lancement de la boite de dialogue
.ShowOpen 'ouvre la boite de dialogue open
If .FileName = "" Then Exit Sub 'si aucun nom selectionner alors sa quite la procedure se qui permet d'eviter une erreur
List1.AddItem .FileName 'ajoute le fichier selectionner dans la list1
End With

les explication je les ai laisser car je suis fegnant pour les retirer (je rigole)

voilà
merci d'avance
a+
NessX

5 réponses

cs_RDX Messages postés 117 Date d'inscription samedi 26 juin 2004 Statut Membre Dernière intervention 27 août 2005
26 juin 2004 à 23:39
salut!

j'avais un projet avec un common dialog en mode multiselection,
je vais essayer de te l'envoyer sur ton mail.

ya deux chose importantes a savoir :

.flags=cdlOFNAllowMultiselect or cdlOFNFileMustExist

1) les nom de fichier seront des noms courts sans espaces, comme sous dos. Il seront listés comme ca :

"c:\windows\file1.ext file2.ext file3.ext"

c'est un espace qui fait la separation entre les nom de fichiers, donc tu peux les extraire sans trop de problème.

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 (ou un truc du genre, je me rappelle plus exactement comment c'est le nom). Sinon tu risque d'avoir une erreur a chaque fois que trop de fichier sont séléctionnés.

Je v voir si je retrouve l'exemple que g fait.
0
cs_RDX Messages postés 117 Date d'inscription samedi 26 juin 2004 Statut Membre Dernière intervention 27 août 2005
26 juin 2004 à 23:52
créer un nouveau projet
créér un bouton "command1"
créér une liste "list1"
créer un comon dialog "cd"

et colle ceci dans form1:

Option Explicit
Dim strFiles(100) As String
Dim filecount As Long

Sub addFiles()
Dim SrcFile         As String
Dim SrcFileList     As String
Dim filePath        As String

Dim counter         As Long
Dim nextPos         As Long

On Error GoTo erreur:

cd.ShowOpen

filePath = cd.FileName
SrcFileList = Right(filePath, Len(filePath) - InStrRev(filePath, ""))
filePath = Left(filePath, InStrRev(filePath, ""))

If SrcFileList = "" Then Exit Sub

If Left(SrcFileList, 1) = " " Then
    nextPos = 0
    Do
        nextPos = nextPos + InStr(Mid(SrcFileList, nextPos + 1, Len(SrcFileList)), Chr(32))
        
        If InStr(Mid(SrcFileList, nextPos + 1, Len(SrcFileList)), Chr(32)) <> 0 Then
            SrcFile = Mid(SrcFileList, nextPos + 1, InStr(Mid(SrcFileList, nextPos + 1, Len(SrcFileList)), Chr(32)))
        Else
            SrcFile = Mid(SrcFileList, nextPos + 1, Len(SrcFileList))
        End If
        
        filecount = filecount + 1
        strFiles(filecount) = filePath & SrcFile
        
        List1.AddItem Dir(filePath & SrcFile)
        
    Loop Until InStr(Mid(SrcFileList, nextPos + 1, Len(SrcFileList)), Chr(32)) = 0
Else
    List1.AddItem Dir(cd.FileName)
    filecount = filecount + 1
    strFiles(filecount) = cd.FileName
End If

cd.FileName = ""

Exit Sub

erreur::
MsgBox Err.Description, , "Erreur"
cd.FileName = ""
End Sub

Private Sub Command1_Click()
    addFiles
End Sub

Private Sub Form_Load()
With cd
    .DialogTitle = "Encoder : fichier source"
    .DefaultExt = "*.*"
    .Filter = "Tout fichiers|*.*"
    .InitDir = App.Path
    .Flags = cdlOFNAllowMultiselect Or cdlOFNFileMustExist
End With
End Sub



je pense qu'il y a plus court pour séparer les nom de fichier mais bon je suis qu'un bidouilleur, pas un devellopeur!
0
nessx Messages postés 98 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 8 janvier 2005
26 juin 2004 à 23:58
salut
ok merci beaucoup je vais essayer sa le plus vite possible si j'ai un probleme je reposte
a+
merci d'avance
NessX
0
nessx Messages postés 98 Date d'inscription mercredi 5 novembre 2003 Statut Membre Dernière intervention 8 janvier 2005
27 juin 2004 à 17:05
salut
je suis debutant j'ai essayer mais j'ai rien compris.T'aurait pas plus court s'il te plait en fait mon appli se compose d'un bouton open qui qd je clicke dessus sa fait le code que j'avé mis plus haut mais là le tient vu que je comprend mm pas un quart du code je ne vois pas comment je pourrai l'appliquer au mien mon bouton se nomme openmp3button
ma listbox se nomme list1 et le composant avec lequel je veux lire les fichier ensuite se nomme wmp1 mais bon pour le composant je serai me debrouiller c juste ton code que j'arrive pas a adapter a mon appli et auquel j'y comprend pas bcp voilà merci pour ton aide mais si tu pouvé encore m'aider un ptit peu s'il te plait
voilà
merci d'avance
a+
NessX
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_RDX Messages postés 117 Date d'inscription samedi 26 juin 2004 Statut Membre Dernière intervention 27 août 2005
29 juin 2004 à 23:18
vas là :
http://www.vbfrance.com/code.aspx?ID=24065

télécharge le zip, c'est le meme mais en commenté
Tous les trucs marqué pas obligatoire tu peux les virer, mais attention, si tu vire un truc pas obligatoire, il faudra virer tout les autres bout de codes non obligatoire! (j'éspere que t'as compris...)

pour remplir ta liste inutile de faire un copier coller du code sur ton bouton, appèlle juste la sub AddFiles et les fichiers seront ajouté a la liste. Ensuite tu les recupère dans list1 et voila!
0