Club Francophone des développeurs Visual Basic


  Vb-French  Vb-English  Autres langages
               Rajoutez votre site

 

Les applications MDI - VideoK7

Vendredi 23 avril 2004

Gilmir  -  Langlade Informatique     

Tutoriel 04    Sommaire
                                        Exercice 4 - La feuille frmDelFile saisie du code
Réalisation de la feuille "frmDelFile"  
qui va nous permettre d'effacer les données inutiles.
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.
Les boutons sont au format 3D issus du contrôle "Threed32"
Si vous ne le possédez pas, utilisez des boutons standards sans option "images".

Les boutons 3D ne sont pas indispensables, c'est simplement plus esthétique.

Vous pouvez récupérer les images avec un logiciel du genre "Paint Shop Pro" si vous ne le possédez pas vous pouvez le télécharger sur le site de "Gilmir.com"
La conception de cette feuille est très simple puisqu'elle dispose de :

2 Labels
Label1 : "Fichier :"
Label2 : "Description :"
2 Panels
Panel3D1(conteneur Liste)
Panel3D2 (conteneur boutons)
2 zones de liste
Liste1
Liste2
3 boutons
Command3D1
Command3D2
Command3D3

Nous procédons au codage des boutons, "le bouton Effacer"
Sub Command3D1_Click ( )
'Annule les initialisations :
'efface tout

For X% = 1 To 10
BaseDonnees$(X%) = "": InfosBDonnees$(X%) = ""
Next X%
'Reclasser les entrées non effacées
'(sans champs vides)

For X% = 0 To Liste1.ListCount - 1
'Entrée non effacée
If Liste1.Selected(X%) = False Then
'Marquée
'Reprendre les information des champs de liste

Nombre% = Nombre% + 1
BaseDonnees$(Nombre%) = Liste1.List(X%)
InfosBDonnees$(Nombre%) = Liste2.List(X%)
End If
Next X%
Unload frmDelFile
End Sub

Le bouton "Infos générés"
Sub Command3D3_Click ( )
'Si les descriptifs des bases de données ne sont pas affichés intégralement, cette commande
'permet d'appeler l'information complète

'Nom de la base de données

frmName!Panel3D1.Caption = BaseDonnees$(Liste1.ListIndex + 1) + ".vsw"
'Descriptif de la base de données
frmName!Panel3D2.Caption = InfosBDonnees$(Liste1.ListIndex + 1)
'Longueur du fichier
frmName!Panel3D3.Caption = Str$(FileLen(App.Path + "\datas\" + frmName!Panel3D1.Caption)) + " Byte"
'Répertoire de travail
frmName!Panel3D4.Caption = App.Path + "\DATAS"
frmName.Show 1
End Sub

Le bouton "Quitter"
Sub Command3D2_Click ( )
Unload frmDelFile
End Sub

Codage des zones de liste
Sub Liste1_Click ( )
'La sélection du fichier conduit automatiquement à la sélection du descriptif
'Cale l'index de la liste

Liste2.ListIndex = Liste1.ListIndex
'Marquage de l'entrée correspondante
Liste2.Selected(Liste2.ListIndex) = True
'Remarque : le calage de la 2ème liste est optimiste : 
la liste n'est pas analysée pour l'effacement

End Sub

Sub Liste2_Click ( )
'La sélection du fichier conduit automatiquement à la sélection du descriptif
'Cale l'index de la liste

Liste1.ListIndex = Liste2.ListIndex
'Marquage de l'entrée correspondante
Liste1.Selected(Liste1.ListIndex) = True
'Remarque : le calage de la 1ère liste est indispensable car il permet de récupérer
' les entrées marquées

End Sub

Ecriture de la procédure Form Load
Sub Form_Load ( )
'Affiche les bases de données et leurs descriptifs
For X% = 1 To 10
If BaseDonnees$(X%) <> "" Then
'Nom du fichier dans liste n° 1
Liste1.AddItem BaseDonnees$(X%)
'Descriptif dans liste n° 2
Liste2.AddItem InfosBDonnees$(X%)
End If
Next X%
'Centre la feuille à l'écran
CenterForm Me
End Sub

Dans la prochaine leçon, nous écrirons le code d' action de la feuille "frmFileOpen"

     


Gilmir ©2000/2004 - Gilmir.com