Club Francophone des développeurs Visual Basic


  Vb-French  Vb-English  Autres langages
               Rajoutez votre site

 

L'application BlocNote
La feuille frmParent

Dimanche 18 septembre 2005

Gilmir Kitsgraphiques.us

Tutoriel 38    Sommaire

L'application BlocNote
Dans le cadre des applications MDI, je vous invite à réaliser un bloc notes comme par exemple NotePad qui est livré en standard avec certains systèmes d'exploitations.
Pour ceux qui ne connaissent pas ce type d'application, je vous invite à consulter les Tutoriels déjà publiés dans les colonnes de ce site ou directement sur le site de visualbasic6.org qui est notre référence en la matière.
Nous créons par la méthode habituelle un nouveau projet et créons les fichiers annexes comme figuré sur le cliché de la figure ci contre.

Nous construisons dans notre projet, la feuille frmAbout traditionnelle la feuille fille frmChild, la feuille frmParent ainsi qu' un module *.bas
Voila la composition de notre application [BlocNote]

Notre projet qui s'intitule BlocNote.vbp sera transformé après déboguage en un fichier exécutable que nous nommerons [Blocnote.exe]

Télécharger l'application BlocNote pour visualiser l'application finale à titre pédagogique.
Réalisation de la feuille frmParent(Parent.frm).
(si vous ne savez pas créer l'application MDI téléchargez le prototype ici)

Nous ouvrons la feuille frmParent

Dans Général Déclaration, nous saisissons :
Dim FenetreMDI As Form

Ensuite, nous insérons dans la feuille frmParent deux contrôles[PictureBox] dont l'un aura comme valeur de propriété "Align" = 1 Align Top et l'autre comme valeur de propriété "Align" = 2 Align Bottom ce qui aura comme effet de positionner les PictureBox, l'une en position haute et l'autre en position basse de la feuille. 
Dans la PictureBox du bas nous insérons un Label(Label1) et saisissons dans sa propriété Caption : Projet pédagogique de réalisation d'un Bloc Notes sous une application Multi Document Interface MDI © 2005 GilMirSoft Développement. (Une fois l'application terminée vous pouvez insérer votre nom et copyright)
Le sigle du copyright s'obtient en appuyant sur la touche Alt du clavier et le chiffre 169 du pavé numérique.
Dans la PictureBox du haut, nous insérons également un Label(Label2) et insérons dans celui-ci 3 boutons que nous nommerons pour le premier en partant de la gauche Propriété Name, ButOuvrir, ButSauver, ButQuitter.
Nous écrirons dans leurs propriétés respective, propriété Caption, les titres correspondants à leurs fonction, Ouvrir, Sauver, Quitter.
Nous insérerons également un objet CommonDialog sur le Label(Label2) qui sera nommé avec la propriété Name suivante :CMDialog1
Ouvrons le créateur de menus et saisissons les paramètres suivants:
Pour mémoire les menus qui comprennent la figure (...) correspond au sous menu les autres au menu.
Menu Caption : &Fichiers
Menu Name : mnu_Windows
Shortcut : 0

Menu Caption : &Ouvrir (...)   , sous menu
Menu Name : mnu_Ouvrir
Shortcut : F7

Menu Caption : &Sauver (...)  , sous menu
Menu Name : mnu_Sauver
Shortcut : 0

Menu Caption : &Quitter (...)  , sous menu
Menu Name : mnu_Quitter
Shortcut : 0

Menu Caption : &Fe&nêtre
Menu Name : mnu_Fenetre
Shortcut : 0

Menu Caption : &Cascade (...)  , sous menu
Menu Name : mnu_Cascade
Shortcut : 0

Menu Caption : &Mosaïque (...)  , sous menu
Menu Name : mnu_Mosaique
Shortcut : 0

Menu Caption : &?
Menu Name : mnu_A
Shortcut : 0

Menu Caption : &A propos de... (...)  , sous menu
Menu Name : mnu_About
Shortcut : 0
Saisissons le code correspondant aux instructions des menus
Private Sub mnu_Ouvrir_Click( )
butOuvrir_Click
End Sub
Private Sub mnu_Sauver_Click( )
butSauver_Click
End Sub
Private Sub mnu_Quitter_Click( )
butQuitter_Click
End Sub
Private Sub mnu_Cascade_Click( )
frmParent.Arrange vbCascade
End Sub
Private Sub mnu_Mosaique_Click( )
frmParent.Arrange vbTileVertical
End Sub
Private Sub mnu_About_Click( )
frmAbout.Show 1
End Sub
Saisissons les instructions des boutons de commande
Private Sub butOuvrir_Click( )
'Définitions des propriétés de la boîte de dialogue
CMDialog1.DialogTitle = "Choisissez un fichier"
CMDialog1.CancelError = True
CMDialog1.Filter = True
CMDialog1.Filter = "Fichiers Textes(*.txt)"
CMDialog1.FilterIndex = 1
CMDialog1.InitDir = "C:\"
'
'Définition de la routine de renvoi d'erreur
On Error GoTo ExitbutOuvrir
'Affichage de la boîte de dialogue
CMDialog1.ShowOpen
'Ouverture du fichier sélectionné
Set FenetreMDI = New frmChild
FenetreMDI.Show
FenetreMDI.Width = 5100
FenetreMDI.Height = 5900
crlf = Chr$(13) + Chr$(10)
Open CMDialog1.FileName For Input As #1
Line Input #1, texte
lire = texte
While Not EOF(1)
Line Input #1, texte
lire = lire + crlf + texte
Wend
FenetreMDI.Text1.Text = lire
FenetreMDI.Caption = CMDialog1.FileName
Close #1
Exit Sub
ExitbutOuvrir:
'Sortie sans provoquer d'erreur
End Sub
Private Sub butSauver_Click( )
'Définition des propriétés de la boîte dedialogue
CMDialog1.DialogTitle = "Enregistrer le fichier sous..."
CMDialog1.CancelError = True
CMDialog1.Filter = "txt (*.TXT | (*.TXT)"
CMDialog1.FilterIndex = 1
CMDialog1.InitDir = "C:\"
CMDialog1.FileName = "Saver.txt"
'
'Définition de la routine de traitement des erreurs
On Error GoTo ExitSaveFile
'Affichage de la boîte de dialogue
CMDialog1.ShowSave
'
'Sauvegarde du fichier
Open CMDialog1.FileName For Output As #1
Print #1, FenetreMDI.Text1.Text
Close #1
Exit Sub
ExitSaveFile:
'Sortie sans provoquer d'erreurs
End Sub
Private Sub butQuitter_Click( )
'Fermer toutes les feuilles et quitter le programme
T$ = "Attention"
M$ = "Voulez vous vraiment quitter le programme ?"
Reponse% = MsgBox(M$, 4 + 32, T$)
If Reponse% = 6 Then
'Sortir du programme
End
End If
End Sub
 
Prochain Tutoriel : La feuille frmChild [frmChild.frm]
   

VisualBasic6.org est hébergé par Gilmir.com