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 4 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).

Ecriture du code de l'objet Fichier1

 
Sélectionnez
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

Ecriture du code de l'objet Form

 
Sélectionnez
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

Ecriture du code de l'objet Lecteur1

 
Sélectionnez
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

Ecriture du code de l'objet Repertoire1

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

Ecriture du code du bouton SSCommand1

 
Sélectionnez
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

Ecriture du code du bouton SSCommand2

 
Sélectionnez
Private Sub SSCommand2_Click( )
	Unload Me
End Sub

Ecriture du code de l'objet Texte1

 
Sélectionnez
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

./images/fileopen.jpg   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"