Tutoriel 37 : La feuille frmFileOPen

Gilbert Miralles

- Titre : Tutoriel 37 : La feuille frmFileOPen

- Auteur : Gilbert Miralles

- Parution : 27 avril 2004

- Licence : Copyright ® 2000 Gilmir. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- Réalisation de la feuille « frmFileOPen » ♪

- Prochain tutoriel

Réalisation de la feuille « frmFileOPen » ♪

Cette feuille va nous permettre d'ouvrir les fichiers qui vont nous servir dans notre application.
C'est une feuille standard d'ouverture de fichier du style Windows.
Vous avez la dimension de la feuille, vous pouvez vous inspirer de cette image pour reconstituer la feuille puisqu'elle est représentée grandeur nature.

Elle est constituée de quatre Labels pour les étiquettes :
Nom Fichier / Répertoires / Format Fichier et Lecteurs.

- 1 TextBox, propriété Name : Texte1

- 1 FileListBox, propriété Name : Fichier1

- 1 DirListBox, propriété Name : Repertoire1

- 1 ComboBox, propriété Name : ListeModif1

- 1 DriveListBox, propriété Name : Lecteur1

- 1 Panel (3D), on peut mettre un pannel standard, propriété Name : Panel1

- 2 Boutons SSCommand, propriété Name : SSCommand1 et SSCommand2

- Si vous utilisez des boutons standards, propriété Name : Command1 et Command2

- 2 boutons d'option SSOPtion(x), propriété Name : opFenetre et opSymbole

- 2 images que vous pouvez récupérer avec un logiciel du type Paint Shop Pro

(si vous ne le possédez pas, vous pouvez le télécharger sur le site de Gilmir.com).

Écriture du code de l'objet Fichier1

Private Sub Fichier1_Click( )
'Récupère la sélection du fichier dans la zone de liste du nom de fichier
Texte1.Text = Fichier1.List(Fichier1.ListIndex)
End Sub

Écriture du code de l'objet Form

Private Sub Form_Load( )
On Error Resume Next
'Initialise le dialogue Ouvrir fichier, présente les types de fichiers existants
Repertoire1.Path = App.Path + "\datas"
ListeModif1.AddItem "*.vsw fichiers de films vidéo"
ListeModif1.ListIndex = 0
'Marque le lecteur courant
Lecteur1.Tag = Lecteur1.Drive
'Affiche le répertoire courant
Etiquette4.Caption = Repertoire1.Path
'Centre la feuille principale à l'écran
CenterForm Me
End Sub

Écriture du code de l'objet Lecteur1

Private Sub Lecteur1_Change( )
On Error Resume Next
Repertoire1.Path = Lecteur1.Drive
If Lecteur1.ListIndex <> -1 Then
'Exécuter la fonction
End If
End Sub

Écriture du code de l'objet Repertoire1

Private Sub Repertoire1_Change( )
Fichier1.Path = Repertoire1.Path
Repertoire1.Refresh
Etiquette4.Caption = Repertoire1.Path
End Sub

Écriture du code du bouton SSCommand1

Private Sub SSCommand1_Click( )
On Error Resume Next
'Autorise l'ouverture de cinq fichiers simultanés pour économiser l'espace mémoire
If FenetreMDI% >= 5 Then GoTo ChargeNon
Chemin$ = Repertoire1.Path
If Right$(RTrim$(Chemin$), 1) <> "\" Then
Chemin$ = Chemin$ + "\"
End If
Entree$ = Chemin$ + Me!Texte1.Text
'Charge les fichiers marqués
Nombre% = 0
Me.Hide
For X% = 0 To Fichier1.ListCount - 1
If Fichier1.Selected(X%) = True And FenetreMDI% < 5 Then
'Marqué
Nombre% = Nombre% + 1
'Fichier avec masque de recherche
Fichier$ = Fichier1.List(X%)
Complet$ = Chemin$ + Fichier$
'Charge le fichier
FenetreMDI% = FenetreMDI% + 1
'Redimensionner sans perte de données
ReDim GewinnWindow(FenetreMDI%)
'Lit la base de données sélectionnée
GewinnWindow(FenetreMDI%).Show
'Chemin et nom du fichier dans la barre de titre
GewinnWindow(FenetreMDI%).Caption = Fichier$
'Stocke le chemin pour une sauvegarde éventuelle
GewinnWindow(FenetreMDI%).Tag = Complet$
'Affiche fenêtre fille sous forme d'icône
If opSymbole.Value = True Then
GewinnWindow(FenetreMDI%).WindowState = 1
ElseIf opFenetre = True Then
'Ouvre fenêtre fille comme fenêtre (standard)
GewinnWindow(FenetreMDI%).WindowState = 0
End If
GewinnWindow(FenetreMDI%).Refresh
End If
Next X%
ChargeNon:
Unload Me
End Sub

Écriture du code du bouton SSCommand2

Private Sub SSCommand2_Click( )
Unload Me
End Sub

Écriture du code de l'objet Texte1

Private Sub Texte1_KeyPress(ToucheAscii As Integer)
On Error Resume Next
If ToucheAscii = 13 Then
If InStr(Texte1.Text, ".*") > 0 Or InStr(Texte1.Text, "*.") > 0 Then
Fichier1.Pattern = Texte1.Text
End If
End If
End Sub

Insérez éventuellement votre Logo dans la feuille.
Vous pouvez récupérer les images de cette réalisation ici

Feuille classique d'ouverture de fichier du style de Windows.

Les boutons de commande représentés sur cette image, ainsi que les boutons d'options, sont des boutons 3D issus du contrôle « Threed32.ocx »

Un peu de patience, vous êtes sur la bonne voie, la voie qui vous mène sur le chemin du savoir et de la connaissance.

Prochain tutoriel

Dans la prochaine leçon, la feuille « frmInfos.frm »