Jai executé ce code. quand même il affiche les images en lecture seule.
donc mes questions sont:
1- Comment je vais modifier cd code pour qu'il m interdit d ouvrir les images en lecture seule?
2- Quel fichier va-t-elle tester la méthode .CheckedFileExists?(2éme ligne)car c'est l utilisateur qui doit ouvrir le fichier cest pas le programme.
3-A quoi sert la méthode .FilterIndex?car j n'ai noté aucune différnce si j l utilise ou non.
et merci
cs_fauve
Messages postés661Date d'inscriptionvendredi 2 décembre 2005StatutMembreDernière intervention23 mars 20118 6 févr. 2007 à 06:26
Salut,
1) En faîte à un moment tu écris .ShowReadOnly = False donc ofd n'affichera pas les fichiers en lecture seul
Pour pouvoir tester si ton fichier est en lecture seule voici comment faire :
Dim Snom As String = ofd.Filename ' Snom contient le chemin d'accès complet du fichier
Dim Fi As FileInfo 'On déclare un FileInfo
Fi = New FileInfo( sNom)
If Fi.Attributes = FileAttributes.ReadOnly Then ' Vrai si le fichier est en lecture seul
Exit Sub ' Quitte la procédure
End If
2)Infos sur CheckedFileExist
CheckFileExist permet tout simplement quand l'utilisateur a choisit un fichier et cliqué sur OK ou Ouvrir si le fichier sélectionné n'existe plus ofd va afficher un message à l'utilisateur indiquant que celui-ci n'existe plus.
En résumé, CheckFileExist permet de contrôler si le fichier existe.
3) Infos sur FilterIndex
FilterIndex permet tout simplement de générer des filtres pour n'afficher que les fichiers ayant un certain type d'extension
Dans ton cas, tu définis deux filtres, le premier affiche tout les fichiers et le deuxième n'affiche que les fichiers ayant comme extension bmp ou jpg.
Pour pouvoir changer de filtre, quand tu affiche ofd à l'utilisateur, tout en bas tu as Fichiers de type c'est là dedans que ce sont mis tes filtres. Il suffit juste que l'utilisateur choisisse le filtre voulu.
4) Voici ton code modifié :
Dim Snom As String
Dim Fi As FileInfo
With ofd
.CheckFileExists = True
.Filter = "All Files|*.*|Bitmap Files (*)|*.bmp;*.jpg"
.FilterIndex = 1
If .ShowDialog = Windows.Forms.DialogResult.OK Then
Snom = ofd.FileName
Fi = New FileInfo(Snom)
If Fi.Attributes = FileAttributes.ReadOnly Then
Exit Sub
End If
End If
End With
, ----
(Coloration syntaxique automatique par Kenji)
Noubliez pas de d'accepter la réponse si celle a réglé votre problème