Functions > FileDirDisk >


FileOpenDialog

Ouvre une bo�te de dialogue de s�lection de fichier.

FileOpenDialog ( "title", "init dir", "filter" [, options = 0 [, "default name" [, hwnd]]] )

Param�tres

title Texte du titre de la boite de dialogue.
init dir R�pertoire initial propos� � l'utilisateur.
filter Filtre unique du type de fichier tel que "Tous les fichiers (*.*)" ou "Fichiers texte (*.txt)" ou groupes de filtres multiples tels que "Tous les fichiers (*.*)|Fichiers texte (*.txt)" (Voir Remarques).
options [optionnel] Options du dialogue: Pour utiliser plus d'une option, regroupez les valeurs avec la fonction BitOR.
    $FD_FILEMUSTEXIST (1) = Le fichier doit exister (si l'utilisateur tape un nom de fichier)
    $FD_PATHMUSTEXIST (2) = Le chemin doit exister (si l'utilisateur tape un chemin, se terminant par un antislash)
    $FD_MULTISELECT (4) = Permettre la s�lection multiple
    $FD_PROMPTCREATENEW (8) = Demande la cr�ation d'un nouveau fichier (s'il n'existe pas)

Les constantes sont d�finies dans FileConstants.au3
default name [optionnel] Nom de fichier sugg�r� � l'ouverture. Vide par d�faut ("").
hwnd [optionnel] Le handle de la fen�tre � utiliser comme parent pour cette bo�te de dialogue.

Valeur de retour

Succ�s: Retourne le chemin complet du (des) fichier(s) choisi. Le r�sultat pour des s�lections multiples ests "R�pertoire|fichier1|fichier2|..."
�chec: D�finit @error <> 0.
@error: 1 - La s�lection de fichier a �chou�.
2 - Filtre de fichier incorrect

Remarques

S�parez les filtres de fichiers avec un point-virgule comme dans l'exemple.
Plusieurs groupes de filtres sont s�par�s par une barre verticale "|".

Si un nom par d�faut est donn�, les options doivent �galement �tre donn�es. Si aucune des options n'est d�sir�e, utilisez 0 pour le param�tre 'options'.

Les dossiers sp�ciaux de Windows (tels que "Mes Documents") peuvent �tre d�finis comme r�pertoire initial. Consultez l'Appendice.

@WorkingDir est modifi� apr�s un appel r�ussi.

En relation

FileSaveDialog, FileSelectFolder, StringSplit

Exemples

Exemple 1

#include <FileConstants.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
    ; Cr�e une constante locale avec le message � afficher dans FileOpenDialog.
    Local Const $sMessage = "Appuyez sur Ctrl ou Shift pour choisir plusieurs fichiers."

    ; Ouvre une bo�te de dialogue  pour s�lectionner une liste de fichier(s).
    Local $sFileOpenDialog = FileOpenDialog($sMessage, @WindowsDir & "\", "Images (*.jpg;*.bmp)| Videos (*.avi;*.mpg)", $FD_FILEMUSTEXIST + $FD_MULTISELECT)
    If @error Then
        ; Affiche le message d'erreur.
        MsgBox($MB_SYSTEMMODAL, "", "Aucun fichier s�lectionn�.")

        ; Change le r�pertoire de travail (@WorkingDir) vers l'emplacement du r�pertoire de script comme FileOpenDialog l'a d�fini au dernier dossier consult�.
        FileChangeDir(@ScriptDir)
    Else
        ; Change le r�pertoire de travail (@WorkingDir) vers l'emplacement du r�pertoire de script comme FileOpenDialog l'a d�fini au dernier dossier consult�.
        FileChangeDir(@ScriptDir)

        ; Remplace les instances de "|" avec CRLF dans la cha�ne retourn�e par FileOpenDialog.
        $sFileOpenDialog = StringReplace($sFileOpenDialog, "|", @CRLF)

        ; Affiche la liste des fichiers s�lectionn�s.
        MsgBox($MB_SYSTEMMODAL, "", "Vous avez s�lectionn� les fichiers suivants:" & @CRLF & $sFileOpenDialog)
    EndIf
EndFunc   ;==>Example


Exemple 2

#include <FileConstants.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
    ;Cr�ez une constante locale avec le message � afficher dans FileOpenDialog.
    Local Const $sMessage = "S�lectionnez un seul fichier de n'importe quel type."

    ; Ouvre une bo�te de dialogue pour s�lectionner un fichier.
    Local $sFileOpenDialog = FileOpenDialog($sMessage, @WindowsDir & "\", "All (*.*)", $FD_FILEMUSTEXIST)
    If @error Then
        ; Affiche le message d'erreur.
        MsgBox($MB_SYSTEMMODAL, "", "Aucun fichier s�lectionn�.")

        ; Change le r�pertoire de travail (@WorkingDir) vers l'emplacement du r�pertoire de script comme FileOpenDialog l'a d�fini au dernier dossier consult�.
        FileChangeDir(@ScriptDir)
    Else
        ; Change le r�pertoire de travail (@WorkingDir) vers l'emplacement du r�pertoire de script comme FileOpenDialog l'a d�fini au dernier dossier consult�.
        FileChangeDir(@ScriptDir)

        ; Remplace les instances de "|" par @CRLF dans la cha�ne renvoy�e par FileOpenDialog.
        $sFileOpenDialog = StringReplace($sFileOpenDialog, "|", @CRLF)

        ; Affiche le fichier s�lectionn�.
        MsgBox($MB_SYSTEMMODAL, "", "Vous avez choisi les fichiers suivants:" & @CRLF & $sFileOpenDialog)
    EndIf
EndFunc   ;==>Example