Exercice 3 - La feuille frmMakefile ♪▲
Nous reviendrons ultérieurement à la construction de la feuille frmChild,
et nous allons nous intéresser à la réalisation de la feuille frmMakeFile.
|
Voici la feuille à réaliser, elle comprend : |
Télécharger les images : Téléchargement
Nous allons renommer les différents objets, tout au moins ceux qui ont un rôle déterminant dans les procédures
Voici les propriétés à modifier :
Texte1
Propriété Name : Texte1
ComboBox
Propriété Name : ListeModif1
Texte2
Propriété Name : Texte2
Etiquette1
Propriété Name : Etiquette1
Propriété Caption : .VSW
Etiquette2
Propriété Name : Etiquette2
Codifions la procédure Form_Load :
Private
Sub
Form_Load
(
)
Etiquette2.Caption
=
App.Path
+
"\DATAS"
For
X% =
1
To
10
If
BaseDonnees$(
X%) <>
""
Then
ListeModif1.AddItem
BaseDonnees$(
X%)
End
If
Next
X%
ListeModif1.Text
=
BaseDonnees$(
1
)
Texte1.Text
=
BaseDonnees$(
1
)
Texte2.Text
=
InfosBDonnees$(
1
)
'Centrage de la feuille
CenterForm Me
End
Sub
Créons la procédure de fermeture de la feuille :
Private
Sub
Form_Unload
(
Cancel As
Integer
)
'Stockons les modifications
On
Error
Resume
Next
KNum =
FreeFile
MkDir App.Path
+
"\datas"
'Création du répertoire "Datas"
Open App.Path
+
"\datas\fichfilm.lst"
For
Output As
#KNum 'Création du fichier "fichfilm"
For
X% =
1
To
10
If
BaseDonnees$(
X%) <>
""
Then
Write #KNum, BaseDonnees$(
X%), InfosBDonnees$(
X%)
'Nous allons créer les fichiers qui nous intéressent
Open App.Path
+
"\datas\"
+
BaseDonnees$(
X%) +
".vsw"
For
Output As
#KNum +
1
'Terminé, nous refermons les fichiers ouverts
Close #KNum +
1
End
If
Next
X%
Close #KNum
End
Sub
Créons la procédure FileDefinition :
Sub
FileDefinition
(
Fichier$, Info$)
'Sélection des fichiers uniquement si nouvelles définitions
For
X% =
1
To
10
'Si fichier existe déjà, annuler
If
Trim
$(
Fichier$) =
Trim
$(
BaseDonnees$(
X%)) Then
Exit
Sub
Next
X%
'Nouvelle définition à créer
Texte1.Text
=
Fichier$
Texte2.Text
=
Info$
Command3D3_Click
End
Sub
Dans la feuille frmMakefile, nous créons la procédure :
Sub
FileDefinition (
Fichier$, Info$)
'Sélection des fichiers uniquement si nouvelles définitions
For
x% =
1
To
10
'Si fichier existe déjà, annuler
If
Trim
$(
Fichier$) =
Trim
$(
BaseDonnees$(
x%)) Then
Exit
Sub
Next
x%
'Nouvelle définition -> créer
Texte1.Text
=
Fichier$
Texte2.Text
=
Info$
Command3D3_Click
End
Sub
Nous allons modifier les propriétés du projet afin de pouvoir lancer le fichier sur lequel nous travaillons sans risque de générer des erreurs.
Cliquer dans la barre de menu sur l'étiquette « Projet », puis sur "Propriétés de Projet1…
Modifiez l'étiquette « Objet de démarrage » et modifiez la ComboBox pour faire apparaître le fichier que nous voulons lancer, en l'occurrence affichons le nom de : « frmMakefile ».
Vous pouvez maintenant lancer votre feuille de travail, la feuille frmMakeFile qui va nous permettre de créer les fichiers de travail devant contenir les données à enregistrer.
Nous continuons à saisir les codes des procédures qui nous sont nécessaires.
Sub
ListeModif1_Change (
)
Texte1.Text
=
ListeModif1.Text
Texte1.Refresh
Texte2.Refresh
End
Sub
Sub
ListeModif1_Click (
)
'Le compteur de ListeModif1 commence à 0, Array à 1
Num% =
ListeModif1.ListIndex
+
1
Texte1.Text
=
BaseDonnees$(
Num%)
Texte2.Text
=
InfosBDonnees$(
Num%)
End
Sub
Sub
Texte1_Change (
)
ListeModif1.Text
=
Texte1.Text
End
Sub
Codifions le premier bouton :
Private
Sub
SSCommand1_Click
(
)
For
X% =
1
To
10
If
BaseDonnees$(
X%) =
""
Or
BaseDonnees$(
X%) =
Texte1.Text
Then
Exit
For
Next
X%
If
X% =
10
And
BaseDonnees$(
X%) <>
""
Then
MsgBox
"Vous ne pouvez pas créer plus de 10 bases de données !"
, 16
, "Attention!"
Exit
Sub
End
If
If
BaseDonnees$(
X%) <>
Texte1.Text
Then
ListeModif1.AddItem
Trim
$(
Texte1.Text
)
ListeModif1.Refresh
End
If
BaseDonnees$(
X%) =
Trim
$(
Texte1.Text
)
InfosBDonnees$(
X%) =
Trim
$(
Texte2.Text
)
End
Sub
Codifions le deuxième bouton :
Private
Sub
SSCommand2_Click
(
)
Texte1.Text
=
""
Texte2.Text
=
""
End
Sub
Codifions le troisième bouton :
Private
Sub
SSCommand3_Click
(
)
'Création automatique de bases de données
FileDefinition "SF"
, "Science Fiction"
FileDefinition "fantasy"
, "Fantasy / Contes"
FileDefinition "horror"
, "Horreur / Angoisse"
FileDefinition "action"
, "Action / Aventure"
FileDefinition "comedy"
, "Comédies / Divertissement"
FileDefinition "music"
, "Musique / Musicals"
FileDefinition "thriller"
, "Thriller "
FileDefinition "love"
, "Love Stories / Histoires d'amour"
FileDefinition "exotic"
, "Erotique & Exotique"
FileDefinition "western"
, "Western / Western spaghetti"
'
'FileDefinition "eastern", "Eastern / Karate / Kung Fu" 'Pour éviter d'engendrer une erreur, nous 'codifions les lignes suivantes en commentaires
'FileDefinition "war", "Guerre"
'FileDefinition "polard", "Policiers/ Espionnage"
'FileDefinition "trick", "Dessins animés / Animations"
'FileDefinition "nature", "Nature / Vie des bêtes"
'FileDefinition "sport", "Sport"
'FileDefinition "document", "Documentaires"
'FileDefinition "roman", "Films à base de romans"
'FileDefinition "show", "Shows & Music / Concerts"
'FileDefinition "tv", "Films télévision / Séries"
End
Sub
Codifions le quatrième bouton :
Private
Sub
SSCommand4_Click
(
)
Unload frmMakefile
End
Sub
Insérez l'icône que vous avez récupérée et installez-la dans la propriété « Icon » de la feuille
Vous pouvez modifier à nouveau les propriétés du projet afin de démarrer avec la feuille « frmParent » ce qui nous permettra de faire un essai avec le premier bouton qui doit normalement afficher la feuille frmMakefike.
À ce stade de l'avancement des travaux, le programme est opérationnel uniquement par l'événement que provoque l'action du bouton N°1 de la feuille frmParent.
Prochain tutoriel ▲
Le code d'action de la feuille « DelFile »