Vous êtes sur la page 1sur 33

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Pas pas: comment crer un logiciel avec Visual Basic.Net? (De la conception la distribution) A qui sadresse ce tutorial ? Ce tutorial sadresse aux dbutants qui ont au moins connaissance du langage Visual Basic .Net, en algorithmique, procdures et fonctions. Pour les utilisateurs avancs de Visual Basic.Net : pas de grandes choses ici !! , mais, faites vous plaisir de sa lecture et retourner les conseils, a m'encourage pour autres choses. Introduction Ce tutorial explique comment crer -pas pas dtaill- un programme en Visual Basic.Net, jai choisis comme exemple : PC Sleeper, un petit programme qui arrte lordinateur dans un temps dfinit par lutilisateur. Description du programme en jeu. PC Sleeper est un programme qui arrte lordinateur dans un dlai de temps dfinit par lutilisateur. PC Sleeper utilise deux mthodes pour arrter l'ordinateur. La premier mthode, l'utilisateur entre un dlai en minute et active le compteur, s'il est par exemple 22h30min et que l'utilisateur a entr comme dlai 30min, alors l'ordinateur s'arrtera 23h00min. La deuxime mthode, l'utilisateu tape directement l'heure, s'il tape par exemple 23:30:00, alors l'ordinateur s'arrtera 23:30:00. Pour cela nous aurons besoin 3 fentres: Une fentre o on effectue le choix de la mthode (fentre Accueil)

Img1 Une fentre pour la Mthode du Compteur (dlai)

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img2 Une fentre pour la Mthode de l'heure

Img3 N.B: on peut arranger les 3 fentres dans une seule, mais laissons les toutes les trois, a va nous aider dcouvrir mieux de commandes en VB.Net
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Outils qu'on aura besoin Un compilateur de Visual Basic.Net comme:VisualStudio.Net, ShareDev, Framework.Net Dans ce qui suit on va utiliser VisualStudio.Net I. Conception de l'interface utilisateur L'interface utilisateur est la partie visible du logiciel l'utilisateur, en occurrence, des fentres. Ces fentres contiennent des contrles: zones de texte o l'utilisateur peut tapez du texte, des boutons, des cases cocher, des listes droulantes, des labels affichant du texte, des images, barre des menus,etc Dans un premier temps on va construire cet interface et par la suite on va tapez le code (le code par exemple qu'est ce qui se passe lorsque l'utilisateur clique sur un bouton, lorsque la souris passe sur un contrle, une fentre est fermeetc). 1. Cration du pro jet avant toutes autres choses Commenons par crer notre projet VisualBasic.Net. Lancez VisualStudio.Net Dans le menu Fichier, cliquez sur Nouveau\ Projet

Img4 Dans la partie gauche, slectionnez Projet Visual Basic. Dans la partie droite, slectionnez Application Windows. Nommez le projet PC Sleeper, et cliquez sur Parcourir pour dterminer un emplacement pour le projet. Remarque : l'utilisateur doit avoir tous les droits d'accs l'emplacement slectionn pour le projet. Voici une capture de l'environnement Visual Studio.Net

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img5 On va dcrire seulement les sections qu'on aura besoin: N1:Boite outils , contient les contrles qu'on va les dplacer sur les formulaires. N2: Une fentre (formulaire en Visual basic) est cre automatiquement lors de la cration du projet, on va ajouter autres. N3:Fentre de Proprits, liste les proprits de l'lment slectionn: dimensions, couleur de fond, couleur et police du texte N4: Fentre Explorateur de solutions, contient tous les lments d'un projet: formulaires, modules, ressources, Remarque : on peut construire toute une application sans boite outils, ni Fentres Proprits et cela en utilisant seulement le code. 2. Conception de la premire fentre (Accueil) Slectionnez le formulaire1 (Form1) clic en dessus pour le slectionner, et dans la Fentre Proprits, dfinissez ses proprits comme montre le tableau suivant:

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img6 Proprits FormBorderStyle Text Name Size StartPosition MaximizeBox MinimizeBox Valeur Fixed3D PC Sleeper frmAccueil 592,416 CenterScreen False False commentaires Dsactive le redimensionnement de la fentre Texte afficher dans la barre de titre Nom du formulaire qu'on va utiliser dans le code Dimensions de la fentre La fentre sera affiche au milieu de l'cran Dsactive le bouton Agrandir Dsactive le bouton Rduire (optionnel)

Egalement aussi dans l'Explorateur de solutions, clic droit sur Form1.vb et renommez la frmAccueil

Img7 Laissez les autres valeurs inchanges. Enregistrer le projet (Fichier\ Enregistrer), et n'oubliez pas cette action chaque fois que vous faites une modification. Gnrez le .Exe, ( Gnrer\ Gnrer PC Sleeper) Excutez le programme ( Dboguer\ Dmarrer), ou F5, ou cliquez sur la flche bleue juste cot de Debug
Img8

Si tout se passe bien, voila ce que vous allez voir:

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img9 Arrtez l'excution, ( Dboguer\ Arrter le dbogage), ou le carreau bleu:

Img10 Maintenant on va placer les contrles dans le formulaire. Les contrles qu'on aura besoin sont: Un Label pour afficher un texte, ce texte est le nom de l'application PC Sleeper. Un GroupBox pour grouper deux cases cocher. Deux RadioButons : cases d'option. Deux Boutons. Un LinkLabel (label sous forme de lien hypertexte) On explique comment faire pour un contrle et c'est valable pour les autres, Dans la Boite outils , un clic sur le contrle label pour le slectionner, dplacez vers le formulaire, le curseur change, dessiner un label, c'est comme un rectangle.

Img11
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Dans la Fentre Proprits, dfinissez les proprits comme montre le tableau suivant: Valeur 255, 224, 192 Fixed3D Old English Text MT, taille:24 style: Gras 255, 128, 255 PC Sleeper MiddleCenter lblTitle 24, 8 536, 48 Commentaire Couleur de fond du label Clique sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police

Proprits BackColor BorderStyle Font

ForeColore Text TextAlign Name Location Size

Couleur de la police (premier plan) Texte afficher dans le label Centre horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Laissez les autres valeurs inchanges Pour certaines valeurs, suffit de cliquer sur la flche devant la proprit et la dfinir seulement avec la souris. placez les autres contrles dans le formulaire, en voici le urs proprits: v Le contrle GroupBox Proprit Valeur commentaire Font Microsoft sans La police, sa taille et son style sheriff, 8pt, style= Gras Text Choisissez une mthode et cliquez sur suivant Name grpBox Nom du GroupBox utilis dans le code Location 24, 72 La position du contrle Size 536, 172 Dimensions du contrle v Les deux cases d'option (RadioButtons) Remarque : dessinez les deux cases d'option dans le GroupBox Premire case d'option Proprits Valeur Font Microsoft sans sheriff, 8pt, style= Gras Cheked True Text Mthode du compteur rebours Name rButton1 Location 24, 40 Size 184, 16 Deuxime case d'option Proprits Valeur Font Microsoft sans sheriff, 8pt, style= Gras Cheked False Text Mthode de l'heure (tapez l'heure directement) Name rButton2

Commentaire Clic sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police La case est coche ds le dpart Texte afficher devant la case d'option

Nom du contrle utilis dans le code Position X et Y de la case Dimension du contrle

Commentaire Clic sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police

Texte afficher devant la case d'option

Nom du contrle utilis dans le code


Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Location Size v Le Proprits Text Name Location Size v Le Proprits Text Name Location Size

24, 72 280, 16 bouton Quitter Valeur Quitter cmdQuit 24, 280 96,32 bouton suivant>> Valeur Suivant>> cmdNext 464, 280 96,32

Position X et Y de la case Dimension du contrle

Commentaire Texte afficher dans le contrle Nom du contrle utilis dans le code Position X et Y du contrle Dimension du contrle

Commentaire Texte afficher dans le contrle Nom du contrle utilis dans le code Position X et Y du contrle Dimension du contrle

v Le LinkLabel Proprits Valeur Text Aide TextAlign MiddleCenter Name Location Size lnklblHelp 240, 304 96,24

Commentaire Texte afficher dans le contrle Centre horizontalement et verticalement le texte dans le label Nom du contrle utilis dans le code Position X et Y du contrle Dimension du contrle

v Ajout d'une barre de menus la fentre Dans la Boite outils , un clic sur le contrle MainMenu puis un clic dans le formulaire, la vous n'avez rien dessiner, regardez en bas du formulaire, un contrle MainMenu1 est ajout. Dans la Fentre Proprits nommez le MainMenu. Maintenant dans le formulaire, vous voyez bien qu'une barre de menus est ajoute et dans le premier menu est crit Tapez ici, alors un clic et tapez les noms des menu:

Maintenant, slectionnez chaque menu/commandes, dans la fentre Proprits donnez le un nom comme montre le tableau suivant: Menu/Commande Nom Fichier mnuFile Quitter mnuFileQuit
Par Brahim Lamzib [PhiberOptik]

Img12

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Outils mnuTools Arrter maintenant mnuToolsStop Redmarrer mnuToolsRestart Fermer la session mnuToolsEndSession Arrter des ordinateurs en rseau mnuToolsStopNetwork ? mnuHelp Aide mnuHelpShowHelp A propos de mnuHelpAbout Et souvenez vous toujours qu'on peut attribuer toutes ces proprits sans utiliser la fentre Proprits et cela en utilisant seulement le code. Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) Si tout se passe bien, une fentre similaire l'image suivante s'affiche:

Img13 Question: pourquoi rien ne se passe lorsqu'on clique sur le bouton Quitter? Arrtez l'excution ( Dboguer\ Arrter le dbogage). C'est fini pour la premire fentre, si les contrles n'apparaissent pas dans la fentre comme vous le voulez, vous pouvez changer leurs proprits votre guise et c'est conseill pour dcouvrir autres proprits. 3. Ajout et conception de la deuxime fentre (fentre du compteur) Cliquez sur Projet\ Ajouter un formulaire Windows

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img14 Dans la partie gauche, dveloppez lments du projet local et slectionnez Interface utilisateur, dans la partie droite slectionnez Windows Form et donnez la comme nom: frmCompteur.vb, Clic sur Ouvrir. Assurez-vous qu'un nouveau formulaire est ajout dans l'Explorateur de solutions . Slectionnez frmCompteur (clic en dessus) et dfinissez ses proprits comme montre le tableau suivant: Proprits Valeur commentaires Fixed3D PC Sleeper (mthode du compteur) frmCompteur 592,416 CenterScreen False Dsactive le redimensionnement de la fentre Texte afficher dans la barre de titre

FormBorderStyle Text

Name Size StartPosition MaximizeBox

Nom du formulaire qu'on va utiliser dans le code Dimension de la fentre La fentre sera affiche au milieu de l'cran Dsactive le bouton Agrandir

A prsent, on va ajouter une barre de menus cette fentre, la mthode c'est la mme qu'on a utilis dans la fentre d' Accueil (voir img12), sauf quelque commande vont disparaitre. Ajoutez un contrle MainMenu et nommez le MainMenu. Ajoutez des menus et commandes dont les proprits sont les suivantes: Menu/Commande Nom Fichier mnuFile Quitter mnuFileQuit ? mnuHelp Aide mnuHelpShowHelp A propos de mnuHelpAbout

Si vous essayer d'excuter le code pour voir la fentre Compteur, c'est la fentre Accueil qui s'affiche et non pas la fentre Compteur parce que le projet prend la fentre Accueil comme objet de dmarrage. Pour la modifier clic sur Projet\ Proprits , en dessous de Objet de dmarrage, choisir frmCompteur. Maintenant on va placer les contrles dans le formulaire. Regarder Img2

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Les contrles qu'on aura besoin sont: Sept labels Label1 affiche le texte titre "PC Sleeper". Label2 affiche le texte "Entrez un dlai en minutes dans lequel l'ordinateur s'arrtera". Label3 affiche le texte "L'ordinateur s'arrtera dans:". Label4 rserve au nombre de minutes restantes. Label5 affiche le texte "minutes". Label6 rserve au nombre de secondes restante. Label7 affiche le texte "secondes". Remarque : On peut utiliser seulement un seul label qui remplace les labels:3, 4, 5, 6, 7 et concatner le texte afficher. Une zone de texte pour taper le dlai. 4 boutons Bouton1: Activer le compteur. Bouton2: Prcdent. Bouton3: Arrter le compteur/rinitialiser. Bouton4:Rduire. v Pour label1 Proprits Valeur BackColor 255, 224, 192 BorderStyle Fixed3D Font Old English Text MT, taille:24 style: Gras ForeColore 255, 128, 0 Text PC Sleeper TextAlign MiddleCenter Name lblTitle Location 24, 8 Size 536, 48 Laissez les autres inchanges. v Pour label2 Proprits Valeur BorderStyle Fixed3D Text Entrez un dlai en minutes dans lequel l'ordinateur s'arrtera Name lblValCompteur Location 24, 88 Size 400, 32 v Pour label3 Proprits Valeur BorderStyle Fixed3D Text L'ordinateur s'arrtera dans: TextAlign MiddleCenter Name Location Size lblTmpRestant 24, 192 160, 24

Commentaire Couleur de fond du label Clique sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police

Couleur de la police (premier plan) Texte afficher dans le label Centre horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Commentaire Texte afficher dans le label

Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Commentaire Texte afficher dans le label Centrer horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Pour label4
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Proprits Font ForeColor BorderStyle TextAlign Name Location Size

Valeur taille:9 style: Gras Purple Fixed3D MiddleCenter lblMinutes 184, 192 72, 24

Commentaire Clique sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police Couleur du premier plan. Centrer horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Pour label5 Proprits Valeur BorderStyle Fixed3D Text Minutes TextAlign MiddleCenter Name Location Size lblMinutes2 256, 192 72, 24

Commentaire Texte afficher dans le label Centrer horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Pour label6 Proprits Valeur Font taille:9 style: Gras ForeColor Purple BorderStyle Fixed3D TextAlign MiddleCenter Name Location Size lblSecondes 328, 192 72, 24

Commentaire Clique sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police Couleur du premier plan. Centrer horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Pour label7 Proprits Valeur BorderStyle Fixed3D Text Minutes TextAlign MiddleCenter Name Location Size lblSecondes2 400, 192 72, 24

Commentaire Texte afficher dans le label Centrer horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Pour la zone de texte Proprits Valeur Commentaire Text Texte afficher dans le label Name txtNbreMin Nom du label utilis dans le code Location 400, 88 Position X et Y de label Size 80, 20 Dimension de la zone du texte (longueur, largeur) MaxLength 5 cinq caractres maximum taper Pour les 3 boutons: v Bouton1 Proprits Valeur Text Activer le compteur Name cmdActiver Location 208, 136 Size 152, 40

Commentaire Texte afficher dans le bouton Nom du bouton utilis dans le code Position X et Y de label Dimension du bouton (longueur, largeur)
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

v Bouton2 Proprits Valeur Text Prcdent Name cmdPreview Location 24, 272 Size 80, 32 v Bouton3 Proprits Valeur Text Arrter le compteur/ Reinitialiser Name cmdStopCompteur Location 472, 272 Size 128, 32 v Bouton4 Proprits Valeur Text Rduire Name cmdMinimize Location 472, 272 Size 80, 32 Si les

Commentaire Texte afficher dans le bouton Nom du bouton utilis dans le code Position X et Y de label Dimension du bouton (longueur, largeur)

Commentaire Texte afficher dans le bouton

Nom du bouton utilis dans le code Position X et Y de label Dimension du bouton (longueur, largeur)

Commentaire Texte afficher dans le bouton Nom du bouton utilis dans le code Position X et Y de label Dimension du bouton (longueur, largeur)

proprits : Location et Size ne vous conviennent pas, vous pouvez les changer. Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) Arrtez l'excution ( Dboguer\ Arrter le dbogage). Si la fentre Accueil s'affiche et non pas la fentre Compteur, clic sur Projet\ Proprits, en dessous de Objet de dmarrage, choisir frmCompteur. Si tous se passe bien, vous devez avoir une fentre semblable celle sur Img2 4. Conception de la troisime fentre: mthode de l'heure Ajoutez un nouveau formulaire au projet (voir comment on a ajout un formulaire dans II.3) Nommez ce nouveau formulaire frmHeure Dfinissez les proprits du la fentre Mthode de l'heure comme montre le tableau suivant: Proprits Valeur commentaires FormBorderStyle Text Fixed3D PC Sleeper (mthode de l'heure) frmHeure 592,416 CenterScreen False Dsactive le redimensionnement de la fentre Texte afficher dans la barre de titre

Name Size StartPosition MaximizeBox

Nom du formulaire qu'on va utiliser dans le code Dimension de la fentre La fentre sera affiche au milieu de l'cran Dsactive le bouton Agrandir

On va ajouter une barre de menus cette fentre, c'est la mme barre des menus que la fentre du Compteur. Ajoutez un contrle MainMenu et nommer le MainMenu, encore ajoutez des menus, commandes dont les proprits sont les suivantes: Menu/Commande Nom Fichier mnuFile Quitter mnuFileQuit ? mnuHelp Aide mnuHelpShowHelp A propos de mnuHelpAbout Si vous essayer d'excuter l'application et que la fentre Compteur qui s'affiche, clic sur
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Projet\ Proprits, en dessous de Objet de dmarrage, choisir frmHeure . Maintenant on va ajouter les contrles au formulaire (voir img3), les contrle qu'on aura besoin sont: 6 labels pour afficher du texte Label1: affiche le titre de l'application "PC Sleeper", on a dj rencontr a. Label2: affiche le texte "Il est maintenant:". Label3: affiche l'heure actuelle. Label4: affiche le texte "A quelle heure vous voulez arrter l'ordinateur?". Label5: affiche le texte "L'ordinateur s'arrtera l'heure que vous avez tap". Label6: affiche l'heure qui a tap l'utilisateur. Un contrle Masked Edit Control. 4 boutons de commande Bouton1: Activer le compteur. Bouton2: Prcdent. Bouton3: Arrter le compteur. Bounton3: Rduire . Pour les labels v Label1 Proprits Valeur BackColor 255, 224, 192 BorderStyle Fixed3D Font Old English Text MT, taille:24 style: Gras ForeColore 255, 128, 0 Text PC Sleeper TextAlign MiddleCenter Name Location Size lblTitle 24, 8 536, 48

Commentaire Couleur de fond du label Clique sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police

Couleur de la police (premier plan) Texte afficher dans le label Centre horizontalement et verticalement le texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Label2 Proprits Valeur BorderStyle Fixed3D Text Il est maintenant: Name lblTimeNow1 Location 24, 88 Size 296, 32 v Label3 Proprits Valeur BorderStyle Fixed3D Font taille:11 style: Gras ForeColore 0, 0, 192 Text rien TextAlign TopLeft Name lblTimeNow Location 336, 88 Size 93, 32 v Label4 Proprits Valeur BorderStyle Fixed3D Text A quelle heure

Commentaire Texte afficher dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Commentaire Clique sur les 3 points devant la proprit Font pour afficher la boite de dialogue Police Couleur de la police (premier plan) Texte afficher dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Commentaire Texte afficher dans le label


Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Name Location Size

vous voulez arrter l'ordinateur lblTimeStp1 24, 128 296, 32

Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

v Label5 Proprits Valeur BorderStyle Fixed3D Text L'ordinateur s'arrtera dans l'heure que vous avez entre Name lblTimeStp2 Location 24, 216 Size 296, 24 v Label6 Proprits Valeur BorderStyle Fixed3D Text rien Name lblTimeStp Location 336, 216 Size 96, 24 Le Masked Edit Control

Commentaire Texte afficher dans le label

Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Commentaire Texte afficher dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Le contrle Masked Edit Control, dit aussi MaskEdBox, est un contrle zone de texte mais quelques restrictions. Le contrle Masked Edit permet de limiter la saisie de donnes et d'afficher des donnes mises en forme. Il permet en outre de vrifier visuellement le type des donnes entres ou affiches. Le contrle Masked Edit se comporte en rgle gnrale comme un contrle de zone de texte standard amlior au niveau des entres masques et des sorties mises en forme facultatives. Si vous n'utilisez pas de masque de saisie, le contrle Masked Edit se comporte de manire similaire une zone de texte standard. Si vous essayer d'ajouter le contrle Masked Edit au formulaire, peut tre, vous ne le trouverez pas, la Boite outils n'affiche pas tous les contrles de Microsoft Visual Baisc.net, voir mme pas le 1/10, question d'espace. Pour ajouter un contrle qui ne figure pas dans la boite outils, clic sur Outils \ ajouter/supprimer des contrles de la boite outils, l, y a deux types de composants: composants .NET Framework et Composants COM. le nom complet du contrle Masked Edit Control est Microsoft Masked Edit Control, il est un composant COM, chercher le et cochez sa case correspondante. a y il se trouve maintenant dans la boit outils, ajoutez le au formulaire et dfinissez ses proprits comme suit: Proprits Valeur Commentaire Name MeskEdBox Nom du contrle utilis dans le code ForeColore Red Couleur de la police (premier plan) Font Size: 11, style: Gras Location 336, 128 Position X et Y de label Size 96, 32 Dimension du label (longueur, largeur) Format tttttt C'est un format de l'heure complet qui va contenir le contrle (dpend des paramtres rgionaux dans le panneau de configuration) exemple: 12:23:45 Mask ##:##:## C'est un Mask, l'utilisateur ne peut taper que des 6 chiffres, les ":" sont seulement sparateur PromptCar _ Caractre utilis pour demander l'utilisateur d'entrer des caractres
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

v Bouton1 Proprits Valeur Text Activer Name cmdActiver Location 224, 168 Size 96, 32 v Bouton2 Proprits Valeur Text Prcdent Name cmdPreview Location 24, 288 Size 112, 32 v Bouton3 Proprits Valeur Text Arrter le compteur Name cmdStpCompteur Location 232, 288 Size 112, 32 v Bouton4 Proprits Valeur Text Rduire Name cmdMinimise Location 448, 288 Size 112, 32

Commentaire Texte afficher dans le contrle Nom du contrle utilis dans le code Position X et Y du contrle Dimensions du contrle (longueur, largeur)

Commentaire Texte afficher dans le contrle Nom du contrle utilis dans le code Position X et Y du contrle Dimensions du contrle (longueur, largeur)

Commentaire Texte afficher dans le contrle Nom du contrle utilis dans le code Position X et Y du contrle Dimensions du contrle (longueur, largeur)

Commentaire Texte afficher dans le contrle Nom du contrle utilis dans le code Position X et Y du contrle Dimensions du contrle (longueur, largeur)

Si les proprits : Location et size ne vous conviennent pas, vous pouvez les changer. Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) Arrtez l'excution ( Dboguer\ Arrter le dbogage). Si la fentre Compteur s'affiche et non pas la fentre Mthode de l'heure , clic sur Projet\ Proprits, en dessous de Objet de dmarrage, choisir frmHeure . Si tous se passe bien, vous devez avoir une fentre semblable celle sur Img3. La conception de l'interface graphique est termin, mais ce n'est qu'on forgeant que l'on devient forgeron, amuser vous par la dcouverte d'autres contrles et leurs proprits, la bibliothque des contrles Visual Basic.net est trs riche N'oubliez pas de re mettre le formulaire frm Acceuil comme objet de dmarrage du projet, Projet\ Proprits. II. Manipulation du code C'est la partie la plus importante dans la cration d'un logiciel et c'est la plus amusante. Maintenant on va prciser qu'est ce que va se passer lorsque l'utilisateur clic sur un bouton, tape un texte, quitte l'applicationetc Toujours, on va commencer par la fentre Accueil. Fermez toutes les onglets:

Img15

double clic sur le formulaire frmAcceuil dans l'Explorateur de solutions pour l'afficher.

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

On va analyser ce que l'utilisateur peut faire. Si l'utilisateur fait un clic sur: Fichier\ Quitter alo rs l'application s'arrte. Outils\ Arrter maintenant : l'ordinateur s'arrte. Outils\ Redmarrer : l'ordinateur redmarre. Outils\ Fermer la session : fermeture de session de l'utilisateur actuel. Outils\ Arrter des ordinateurs en rseau : affichage d'une interface graphique qui gre l'arrt des ordinateurs en rseau. ?\ Aide : affichage de l'aide (on va la isser a plus tard) ?\ A propos de : affichage d'une boite A propos de (on va laisser a plus tard) Suivant : deux cas possible Si le bouton "Mthode du compteur rebours" est coch alors disparition de la fentre Accueil et affichage de la fentre Mthode du compteur Si le bouton "Mthode directe" est coch alors disparition de la fentre Accueil et affichage de la fentre Mthode de l'heure Quitter : l'application s'arrte. Aide : affichage d'aide (on va laisser a plus tard) On constate que le code qui va arrter l'application va tre appel plusieurs fois, Par Ficher\ Quitter, Par le bouton Quitter, Par Fichier\ Quitter de la fentre Mthode du Compteur, Par Fichier\ Quitter de la fentre Mthode de l'heure . De mme pour le code qui va arrter l'ordinateur, il sera excut dans la fentre Mthode du Compteur et aussi dans fentre de Mthode de l'heure . Donc au lieu de rpter le mme code plusieurs fois, et il est possible de le faire, on va seulement l'crire dans un objet externe puis l'appeler chaque fois qu'on a besoin. Cet objet s'appelle Module, les modules en Visual basic servent dclarer des fonctions, procdures ou des variables d'une faon publique, .-.-d., seront visibles et utilisables par tous les autres objets du projet. Comment ajouter un module un projet? Clic sur projet\ Ajouter un module

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img16

Dans la partie gauche, slectionnez Elment de projet local Dans la partie droite, slectionnez Module Nommez le Module.vb Clic sur Ouvrir Vous voyez bien un Module est ajout au projet dans l'Explorateur de solutions. Allez, on commence le code 1. Le module Double clic sur Module.vb, voila ce que vous allez voir:

Img17

Tous ce qu'on va dclarer, se trouve entre Module _Module et End Module A. Dclaration d'une fonction qui arrte l'ordinateur: Module _Module Public Function Arret() 'Fonction pour arrter le PC Shell("Shutdown -S -f -t 00", AppWinStyle.Hide) End Function
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

End Module Remarque: le texte en couleur vert ne s'excute pas, c e n'est pas un code, c'est un commentaire, il est prcd toujours par un apostrophe '. Cette fonction s'appelle Arret La commande qui permet d'arrter l'ordinateur est Shutdown. -S est un paramtre pass shutdown pour mettre l'ordinateur hors tension. -f est un paramtre pass shutdown pour forcer les applications en cours d'excution de se fermer sans avertissement. -t 00 est un paramtre pass shutdown pour attendre 00 secondes et arrter l'o rdinateur lorsqu'on fait appel shutdown. AppWinStyle.Hide cache la console DOS. Shell est la commande en Visual Basic qui excute des programmes .exe. dans ce cas on a tap directement Shutdown sans prciser o il se trouve car il est dj dclar dans la variable Path de Windows puisqu' il se trouve dans \system32. Dans le cas o on veut appeler un programme qui n'est pas dclar dans la variable Path, alors on passe la commande Shell son chemin complet. Exemple Shell("c:\windows\system32\Shutdown -S -f -t 00", AppWinStyle.Hide), marche aussi. B. Dclaration d'une fonction qui redmarre l'ordinateur: Ajoutez cette fonction en bas de la fonction Arret Public Function Redemarre() 'Fonction pour redmarrer Shell("shutdown -r -f -t 00", AppWinStyle.Hide) End Function Cette fonction s'appelle Redemarre La seule chose qui a change c'est le paramtre r -r est un paramtre pass shutdown pour redmarrer l'ordinateur. C. Dclaration d'une fonction qui ferme la session Ajoutez cette fonction en bas de la fonction Redemarre Public Function FermerSession() 'Fonction pour fermer la session Shell("shutdown -l ", AppWinStyle.Hide) End Function Cette fonction s'appelle FermerSession -l est un paramtre pass shutdown pour fermer la session. D. Dclaration d'une fonction qui gre des ordinateurs en rseau Ajoutez cette fonction en bas de la fonction FermerSession Public Function ArretReseau() 'Fonction pour afficher l'inteface graphique Shell("shutdown -i", AppWinStyle.NormalFocus) End Function Cette fonction s'appelle ArretReseau -i est un paramtre pass shutdown pour afficher l'interface graphique (voir img18) AppWinStyle.NormalFocus pour que l'interface graphique s'affiche comme fentre normale.

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img18

E. Dclaration d'une fonction qui met fin l'application Ajoutez cette fonction en bas de la fonction ArretReseau Public Function Quit() MsgBox("PC Sleeper arrt! Compteur arrt! merci d'avoir choisis" & _ "PC Sleeper", MsgBoxStyle.Information) Application.Exit() End Function MsgBox pour afficher un m essage avant de quitter. MsgBoxStyle.Information pour spcifier le style de message. Application.Exit met fin l'application. En rsum, votre Module.vb est semblable : Module _Module Public Function Arret() 'Fonction pour arrter le PC Shell("Shutdown -S -f -t 00", AppWinStyle.Hide) End Function Public Function Redemarre() 'Fonction pour redmarrer Shell("shutdown -r -f -t 00", AppWinStyle.Hide) End Function Public Function FermerSession() 'Fonction pour fermer la session Shell("shutdown -l ", AppWinStyle.Hide) End Function Public Function ArretReseau() 'Fonction pour afficher l'interface graphique Shell("shutdown -i", AppWinStyle.NormalFocus) End Function
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Public Function Quit() MsgBox("PC Sleeper arrt! Compteur arrt! merci d'avoir choisis" & _ "PC Sleeper", MsgBoxStyle.Information) Application.Exit()'Met fin l'application End Function End Module 2. La fentre Accueil Maintenant double clic sur frmAccueil dans l'Explorateur de solutions pour l'afficher en mode design. Dans le formulaire frmAccueil, dans sa Barre de menus (la Barre de menus qu'on a construit), clic sur Ficher, puis double clic sur Quitter. L vous tomber dans la partie code li de ce formulaire

Img19

Public Class frmAccueil: c'est le code li au objet frmAccueil Inherit System.Windows.Forms.Form: que cet objet est un formulaire. Code gnr par le concepteur Winows Form: c'est le code produit par Visual Basic qui a construit le formulaire ainsi les contrles qu'il contient, c'est comme genre de WYSIWYG dans en html. Private Sub mnuFileQuit_Click: c'est une procdure prive qui s'appelle mnuFileQuit, le mme nom de la commande Quit du menu Fichier!, _Click: que le code que contiendra cette procdure s'excute quand l'vnement Click est gnr (l'vnement Click se gnre lorsqu'on fait un clic par la souris en dessus). End Sub: fin du code li cette procdure prive. End Class: fin du code li au formulaire. Le code que c ontiendra cette procdure doit appele r la fonction Quit qu'on a manipul dj et qui se trouve dans le Module.vb L'appel d'une fonction se fait seulement par taper son nom et passer elle les paramtres, dans notre cas nous n'avons aucun paramtre, ainsi nous crivons: Private Sub mnuFileQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFileQuit.Click Quit() End Sub Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) Cliquez sur Fichier\ Quitter, sympa J
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Revenez au formulaire frmAccueil en mode design, maintenant vous savez bien qu'il y deux modes pour afficher un formulaire: en mode design ou en mode code. Clic sur Outils puis double clic sur Arrter maintenant, l, vous tomber une autre fois sur le mode code, mais la procdure suivante s'ajoute: Private Sub mnuToolsStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuToolsStop.Click End Sub Vous comprenez ce que a signifie, si non revoir la procdure en haut. Dans cette procdure, on doit faire un code qui appel la fonction qui arrte l'ordinateur, en occurrence la fonction Arret qui se trouve dans le Module.vb, ainsi nous crivons Private Sub mnuToolsStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuToolsStop.Click Arret() End Sub De mme pour Outils\ Redmarrer, Outils\ Fermer la session, Outils\ Arrter des ordinateurs en rseau. En rsum voila notre code li au formulaire frmAccueil jusqu' maintenant: Private Sub mnuFileQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuFileQuit.Click Quit()'appel la fonction Quit End Sub Private Sub mnuToolsStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuToolsStop.Click Arret()'appel la fonction Arret End Sub Private Sub mnuToolsRestart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuToolsRestart.Click Redemarre()'appel la fonction Redemarre End Sub Private Sub mnuToolsEndSession_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles mnuToolsEndSession.Click FermerSession()'appel la fonction FermerSession End Sub Private Sub mnuToolsstopNetwork_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles mnuToolsstopNetwork.Click ArretReseau()'appel la fonction ArretReseau End Sub Double clic sur le bouton Quitter du formulaire frmAccueil en mode design, et lui aussi ajouter le code pour quitter l'application lorsque l'utilisateur clique sur ce bouton Private Sub cmdQuit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdQuit.Click Quit()'appel la fonction Quit End Sub Pour le bouton Suivant>>, on va ajouter ce code: Private Sub cmdNext_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdNext.Click 'Verifie quel bouton est coch? If rButton1.Checked = True Then 'si rButton1 est coch alors Dim frm As New frmCompteur 'instancier le formulaire frmCompteur
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

'c'est comme crer une image de formulaire frmCompteur frm.Show() 'afficher le formulaire instanci Me.dispose 'destruction du formulaire frmAccueil Else Dim frm As New frmHeure 'instancier le formulaire frmHeure 'c'est comme crer une image de formulaire frmHeure frm.Show() 'afficher le formulaire instanci Me.dispose() 'destruction du formulaire frmAccueil End If End Sub Lisez bien le commentaire. On va laisser les autres plus loin: LinkLabel Aide, ?\Aide et ?\A propos de Testez l'application Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) 3. La fentre de la Mthode C ompteur. Maintenant on va passer au formulaire frmCompteur. Fermer tous les onglets ouverts y compris celle du module.vb et double clic sur frmCompteur pour l'afficher en mode design. Clic sur Fichier puis double clic sur Quitter et faites la mme chose que frmAccueil, en voila le code Private Sub mnFileQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnFileQuit.Click Quit() End Sub On passe au TextBoxe, autrement dis zone de texte, c'est dans cette zone de texte o l'utilisateur va taper le nombre des minutes. Le nombre des minutes doit tre un entier numrique, pas de virgules, pas de points, pas de alphabets, pas de. Seulement les chiffres de 0 9 qui sont autoris. Et s'il arrive qu'un utilisateur tape un texte dedans, qu'est ce qui va se passer? Un Bug, une erreur est leve et le programme se coince ! donc il faut limiter l'utilisateur pour qu'il puisse taper seulement des chiffres de 0 9, rien d'autre. Double clic sur TextBoxe nomm txtNbreMin, vous tomber dans la partie code et exactement sur la procdure li au txtNbreMin: Private Sub txtNbreMin_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtNbreMin.TextChanged End Sub Vous voyer que le code plac dans cette procdure s'excute lorsque l'vnement TextChanged est gnr, donc aprs que le texte est tap, mme soit-il des alphabets ! donc cet vnement nous ne convient pas. Nous voulons que le code qui autorise seulement les chiffres s'excute une fois l'utilisateur tape une touche pour vrifier qu'est ce qu'il a tap. L'vnement qui nous convient dans ce cas est KeyPress (Key: touche, Press: appuy) Placez le curseur dans la procdure en dessus et un clic sur (regarder la flche)

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img20 Vous aurez une autre procdure de mme nom, mais avec l'vnement KeyPress: Private Sub txtNbreMin_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtNbreMin.KeyPress End Sub C'est dans cette procdure o on doit placer notre code puis qu'il va tre excut une fois que l'utilisateur tape une touche. Le code est le suivant: Private Sub txtNbreMin_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtNbreMin.KeyPress Dim c As Char c = e.KeyChar If Not (Char.IsDigit(c) Or c.Equals(Chr(8))) Then 'seulement les chiffres et la touche RETOUR ARRIERRE e.Handled = True 'Considre le caractre comme nul s'il n'est pas un chiffre Beep() 'Emmet un bip End If End Sub

Le bouton Activer, qu'est ce va se passer lorsque l'utilisateur fait un clic sur le bouton Activer? On rcupre la valeur tap dans la zone de texte On active le compteur qui va compteur de cette valeur (pas d'une seconde) jusqu' 0 et arrte l'ordinateur. Remarque : on va crer notre compteur et ne pas utiliser les fonctions de Date et Time fournis avec Visual Basic. C'est hors de ce tutorial. On a besoin de dclarer deux variables, Min et Sec qui vont contenir respectivement les minutes et les secondes restantes chaque seconde et on ajoute un contrle Timer qui soustrait chaque seconde une seconde de la valeur que l'utilisateur jusqu' que cette valeur devient nulle, en ce moment on fait appel la fonction Arret qui va arrter l'ordinateur. La dclaration des deux variables Min et Sec, doit tre dans la zone dclaration du formulaire pour que ces variables soient utilisable par toutes les procdures de celui-c i. Dclaration des deux variables: Editez le formulaire frmCompteur en mode code:

Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Img21

Dans la liste droula nte gauche, choisissez frmCompteur Dans la liste droulante droite choisissez Dclaration Dclarez les deux variables Min et Sec comme suit: Private Min As Integer Private Sec As Integer Ajout d'un contrle Timer Dans la boite outils, slectionnez le contrle Timer et faites un clic dans le formulaire, vous voyer bien un contrle est ajout en bas du formulaire et non pas dans celui-ci, slectionnez le et dfinissez ses proprits comme montre le tableau suivant: Proprits Valeur Commentaire Enabled False Le Timer est dsactiv l'affichage du formulaire Interval 1000 Le code qui se trouve dans le la procdure_tick du Timer sera excut chaque seconde Name tmrCompteur Le nom qui sera utilis dans le code Maintenant revenir au bouton Activer et tapez son code associ l'vnement Click comme suit: Private Sub cmdActiver_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdActiver.Click If txtNbreMin.Text = "" Then 'si la zone du texte ne contient aucune valeur MsgBox("Entrer une valeur valide") Exit Sub 'sortir de la procdure Else Min = CInt(txtNbreMin.Text) 'Reception du dlai tap Sec = 0 tmrCompteur.Enabled = True txtNbreMin.Enabled = False End If End Sub Cint permet de convertir le type String en Entier. Maintenant le Timer, double clic en dessus: Private Sub tmrCompteur_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrCompteur.Tick If Min = 0 And Sec = 0 Then tmrCompteur.Enabled = False Arret() 'appel de la fonction arret si le nombre de minutes et seondes devient nul Else If Sec = 0 Then Min = Min - 1 Sec = 60 Else Sec = Sec - 1 End If
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

End If lblMinutes.Text = CStr(Min) lblSecondes.Text = CStr(Sec) End Sub C'est vous de comprendre ce codeJ. Cstr permet de convertir un entier en string. Pour le bouton Prcdent:

Private Sub cmdPreview_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdPreview.Click Dim var As String var = MsgBox("Ceci arrtera le compteur", MsgBoxStyle.OKCancel) If var = vbOK T tmrCompteur.Enabled = False Dim frm As New frmAccueil frm.Show() Me.Dispose() Else Exit Sub End If End Sub

Pour le bouton Arrter le compteur/ Rinitialiser:

Private Sub cmdInitialise_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdInitialise.Click tmrCompteur.Enabled = False lblMinutes.Text = "" lblSecondes.Text = "" txtNbreMin.Enabled = False txtNbreMin.Text = "" End Sub Pour le bouton Rduire : Private Sub cmdMinimize_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdMinimize.Click Me.WindowState = FormWindowState.Minimized End Sub Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) C'est presque fini pour le formulaire frmCompteur. 4. La fentre de la mthode de l'Heure Premirement on va ajouter deux contrles Timer, le premier TmrTimeNow, sera utilis pour afficher l'heure actuelle dans le label lblTimeNow, le deuxime TmrStop sera utilis pour vrifier chaque seconde l'heure tap par l'utilisateur et l'heure actuelle, une fois les deux valeur sont gaux, alors on appel la fonction Arret. Ajoutez deux contrle Timer au formulaire frmHeure et dfinissez leurs proprits comme suit: Timer1 Proprits Valeur Commentaire Enabled True Le Timer est activ l'affichage du formulaire Interval 1000 Le code qui se trouve dans le la procdure_tick du Timer sera excut chaque seconde Name tmrTimeNow Le nom qui sera utilis dans le code Timer2
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Proprits Enabled Interval Name

Valeur False 1000 tmrStop

Commentaire Le Timer est dsactiv l'affichage du formulaire Le code qui se trouve dans le la procdure_tick du Timer sera excut chaque seconde Le nom qui sera utilis dans le code

Double clic sur tmrTimeNow pour diter le code. Ajouter le code suivant associ l'evenement Tick: Private Sub tmrTimeNow_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrTimeNow.Tick lblTimeNow.Text = System.DateTime.Now.ToString("T") End Sub Ce code permet d'afficher dans le lebel l'heure actuelle du systme chaque seconde. Le bouton Activer La valeur tap par l'utilisateur dans le MaskEdBoxe est de type string, on va la convertir en type Date puis la mettre dans une variable. Et le tmrStop vrifiera chaque seconde l'heure actuelle du systme par celle qui se trouve dans cette variable. La dclaration de cette variable sera dans la partie Dclaration du formulaire frmHeure .

Img22 Ensuite, double clic sur le bouton Activer pour diter le code, voici le code qu'on va taper: Private Sub cmdActiver_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdActiver.Click On Error GoTo GestionErreur 'si l'utilisateur ne tape pas une heure valide TimeStop = CDate(MaskEdBox.defaultText) lblTimeArret.Text = TimeStop tmrStop.Enabled= True GestionErreur: If Err.Number = 13 Then 'si l'utilisateur ne tape pas une heure compatible MsgBox("L'heure que vous avez tap n'est pas valide") End If End Sub Le contrle tmrStop

Private Sub tmrStop_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrStop.Tick If System.DateTime.Now.ToString("T") = TimeStop Then Arret() End If Le bouton Prcdent Private Sub cmdPreview_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdPreview.Click Dim var As String var = MsgBox("Ceci arrtera le compteur", MsgBoxStyle.OKCancel) If var = vbOK Then tmrStop.Enabled = False
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Dim frm As New frmAccueil frm.Show() Me.Dispose() Else Exit Sub End If End Sub Le bouton Arrter le compteur Private Sub cmdStopCompteur_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdStopCompteur.Click tmrStop.Enabled = False lblTimeArret.Text = " " MaskEdBox.Mask = "" MaskEdBox.defaultText = "" MaskEdBox.Mask = "##:##:##" MaskEdBox.Enabled = True End Sub

Le bouton Rduire Private Sub cmdMinimise_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdMinimise.Click Me.WindowState = FormWindowState.Minimized End Sub

Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) Testez l'application Arrtez l'excution C'est presque finis pour le formulaire frmHeure et tout le projet. L'essentiel du projet et fait, excutez et testez plusieurs fois l'application et essayez toujours de donner des valeurs incompatibles ou cliquez sur des boutons pour verifier la cohrence. I. Ajout d'une fentre A propos de une fentre Spalsh et un Aide On va ajouter une fentre A propos de qui affiche des informations sur le logiciel, sa version, son concepteur Une fentre spalsh, c'est une fentre qui s'affiche quand on excute l'application, affichant une jolie image, ou un texte, puis elle disparait. Microsoft Word est bon exemple pour a. 1. Ajout de la fentre A propos de Dans le menu Projet, clic sur Ajouter un formulaire (voir img14), ajoutez une WindowsForm , nommez l: frmAbout.vb Double clic sur frmAbout et dfinissez ses proprits comme suit: Proprits Valeur commentaires FormBorderStyle Text Name Size StartPosition MaximizeBox MinimizeBox FixedDialogue A propos de frmAbout 298, 298 CenterScreen False False Dsactive le redimensionnement de la fentre Texte afficher dans la barre de titre Nom du formulaire qu'on va utiliser dans le code Dimension de la fentre La fentre sera affiche au milieu de l'cran Dsactive le bouton Agrandir Dsactive le bouton Rduire

Ajout des contrles la fentre A propos de On aura seulement besoin de deux labels et un bouton Ok Pour label1 Proprits Valeur Commentaire ForeColor 0, 0, 192 Couleur du premier plan du label
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

Text Name Location Size

lblAbout1 48, 8 192, 112

Texte afficher dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Pour label2 Proprits Valeur Text PhiberOptik (phiberoptikdotnet@hotmail.com) TextAlign MiddleCenter Name lblAbout2 Location 56, 128 Size 176, 40

Commentaire Texte afficher dans le label Alignement du texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Maintenant, double clic sur n'importe quel endroit vide du formulaire frmAbout pour diter le code: Private Sub frmAbout_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Cette procdure est associe l'vnement Load (chargement) du formulaire frmAbout, c'est-dire elle sera excute au chargement du formulaire. Vous avez remarqu que la proprit Text du lblAbout tait vide, c'est maintenant qu'on va la remplir. Private Sub frmAbout_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim msgAbout As String msgAbout = "PC Sleeper est un programme, qui arrte" & _ " l'ordinateur dans un temps dtrmin par l'utilisateur." lblAbout1.Text = msgAbout End Sub Ce code affiche un texte dans le lblAbout1 On constate que la fentre A propos de sera affiche une fois l'utilisateur fait un clic sur le menu ? puis sur Aide. Cette commande se trouve dans les trois fentres: frmAccueil, frmCompteur, frmHeure. Donc au lieu de rpter le code trois fois, on va crer encore une fonction dans le Module.vb et l'appeler chaque fois qu'on a besoin. Cette fonction s'appelle: AfficheAbout Ajoutez cette fonction en bas des autres dans le Module.vb Public Function AfficheAbout() 'Affiche la fentre A propos de... Dim frm As New frmAbout frm.ShowDialog() 'Affichage en modale End Function Affichage en modale: dsactive toutes les autres fentres ouvertes tant que la fentre A propos de est encore affiche. A prsent on appel cette fonction ds les trois fentres, ajoutez ce code en dessous, dans le code des trois formulaires: Private Sub mnuHelpAbout_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuHelpAbout.Click AfficheAbout() End Sub

2. Ajout d'une fentre spalsh On va ajouter au projet, un autre formulaire (voir img14) et on le nomme frmSplash.vb Dfinissez les proprits de ce formulaire comme montre le tableau suivant: Proprits Valeur commentaires
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

FormBorderStyle Name Size StartPosition

None frmSplash 512, 213 CenterScreen

Aucune bordure Nom du formulaire qu'on va utiliser dans le code Dimension de la fentre La fentre sera affiche au milieu de l'cran

Ajouter deux labels au formulaire frmSplash: label1 et label2 Pour label1 Proprits Valeur Commentaire BackColor 255, 224, 192 Couleur d'arrire plan Font Vivaldi, 36pt, Police, taille et style du texte style=bold, italic ForeColor Purple Couleur du premier plan du label Text PC Sleeper TextCenter MiddleCenter Alignement du texte dans le label Name lblSplash1 Nom du label utilis dans le code Location 0, 0 Position X et Y de label Size 512, 184 Dimension du label (longueur, largeur) Pour label2 Proprits Valeur BackColor 192, 255, 192 Text TextCenter MiddleCenter Name lblSplash2 Location 0, 184 Size 512,29

Commentaire Couleur d'arrire plan By PhiberOptik Alignement du texte dans le label Nom du label utilis dans le code Position X et Y de label Dimension du label (longueur, largeur)

Maintenant, double clic sur n'importe quel label pour diter le code, dans la liste droulante gauche choisissez frmSplash (events), dans celle droite choisissez Activated: Private Sub frmSplash_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated End Sub Ajoutez ce code: Private Sub frmSplash_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated Me.Refresh() 'Affichage total de le fentre System.Threading.Thread.Sleep(3000) 'l'excution s'arrte 3 secondes Dim frm As New frmAccueil frm.Show() Me.Hide() End Sub Ce code affiche la fentre Splash 3 secondes (3000 millisecondes) puis affiche la fentre Accueil. Maintenant modifiez l'objet du dmarrage du Projet: clic sur Projet\ Proprits de Pc Sleeper , en dessous de Objet de dmarrage, choisissez frmSplash. Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) Vous devez voir la fentre Splash s'affiche pendant 3 secondes. 3. Ajout d'un aide On a l'habitude, quand on utilise un logiciel sous Windows, d'appuyer sur la touche F1, ou cliquer sur le menu ?\Aide pour avoir de l'aide. L'aide peut tre dans l'ordinateur local ou sur internet, et peut tre sous forme html, documents texte, pdf, chm, hlpetc. ces deux derniers
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

sont souvent utilis, mais on ne va pas les faire, c'est hors ce tutoriel, il y a plusieurs tutoriels qui explique comment gnrer un aide chm ou hlp. On va crer un aide pdf et l'appeler chaque fois qu'on a besoin. J'ai dj prpar un aide au format pdf. tlcharger le ici. Ajout d'aide Ajoutez un contrle HelpProvider aux trois formulaires: frmAccueil, frmCompteur et frmHeure. Nommez le pour tous les trois HelpProvider. Pour tous les trois formulaires, dfinissez la proprit HelpNavigator Topic Proprits Valeur Commentaire HelpNavigator Topic Pour tous les trois formulaires, frmAccueil, frmCompteur et frmHeure, ajoutez ce code li l'vnement Load, a permet de dfinir le fichier d'aide associ au contrle HelpProvider Private Sub frmAccueil_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load HelpProvider.HelpNamespace = Application.StartupPath & "\" & "aide.pdf" End Sub Private Sub frmCompteur_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load HelpProvider.HelpNamespace = Application.StartupPath & "\" & "aide.pdf" End Sub Private Sub frmHeure_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load HelpProvider.HelpNamespace = Application.StartupPath & "\" & "aide.pdf" End Sub Application.StartupPath: retourne le chemin o est installe l'application. Vrifier bien que l'aide s'affiche quand vous appuyez sur F1. L'aide aussi doit s'afficher lorsque l'utilisateur fait un clic sur: ?\Aide de la fentre Accueil Linklabel Aide de la fentre Accueil ?\Aide de la fentre Mthode du Compteur ?\Aide de la fentre Mthode de l'heure Lorsqu'un code va se rpter plusieurs fois, on pense directement au module, oui, on va y ajouter une fonction qui affiche l'aide et l'appeler plusieurs fois. Cette fonction ne sera qu'une mulation de la touche F1, a veut dire quand l'utilisateur fait un clic sur un contrle parmi les quatre en dessus c'est comme il a appuy sur F1, c'est a l'mulation. Ajoutez cette fonction au Module.vb Public Function ShowHelp() 'Afficher la page d'aide SendKeys.Send("{F1}") End Function La function s'appelle: ShowHelp. La commande SendKeys permet l'mulation d'une touche de clavier, vous pouvez muler A en B J. Maintenant on appelle cette fonction depuis les quatre contrles en dessus: Pour les trois ?\Aide des trois formulaires: Private Sub mnuHelpShowHelp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuHelpShowHelp.Click showhelp() End Sub Pour le LinkLabel Aide de la fentre Accueil: Private Sub lnklblHelp_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

lnklblHelp.LinkClicked ShowHelp() End Sub

Enregistrez le projet (Fichier\ Enregistrer), Excutez le programme ( Dboguer\ Dmarrer) C'est fini ! vous y tes ! excutez l'application plusieurs fois, testez tous les contrles, tous les liens, entrez des anomalies, n'ayez aucune confiance en utilisateur final Maintenant quelques esthtiques notre logiciel, on lui donne une icne, vous trouverez une icne dans le projet ou chercher une autre condition quelle soit .ico et 32x32. Pour tous les formulaires part la fentre Splash, dfinissez la proprit Icon, clic sur les trois points et naviguer jusqu'au votre icne. Vous pouvez ajouter cette icne dans la fentre A propos de comme image, je vous laisse ce travail. Oui j'ai fini mon application, alors comment l'installer dans autres PC et qui n'ont pas Visual Studio? Comment mon application se trouve dans le menu dmarrer de l'utilisateur final? Dans son bureau?...etc III. Dploiement d'une application Dans cette section, et c'est la dernire on va crer un projet pour dployer et installer l'application. C'est comme genre "Bienvenue dans l'assistant installation de PC Sleeper", "Cliquez sur suivant pour continuer". Dans le menu Fichier, cliquez sur Nouveau \Projet\ (voir Img4), dans la partie gauche, choisissez Projet de configuration et dploiement, dans la partie droite, choisissez Projet de configuration Nom: Programme d'installation de PC Sleeper Emplacement: mme que PC Sleeper (clic sur parcourir) Cocher: Ajouter la solution Voila un aperu de ce que vous obtenir:

Slectionnez le projet Programme d'installation de PC Sleeper dans l'Explorateur de solutions et dfinissez ses proprits dans la fentre Proprit comme suit: Proprits Valeur Commentaire Author PhiberOptik J Description Programme qui arrte l'ordinateur dans un dlai de temps Manufacturer PC Sleeper ProductName PC Sleeper Title PC Sleeper

Img23

Pour ajouter l'application PC Sleeper au programme d'installation 1) Slectionnez le projet Programme d'installation de PC Sleeper dans l'Explorateur de solutions . 2) Dans l'diteur du systme de fichiers, slectionnez le nud Dossie r d'application. 3) Dans le menu Action, choisissez Ajouter, Sortie du projet. 4) Dans la bote de dialogue Ajouter le groupe de sortie du projet, choisissez PC Sleeper
Par Brahim Lamzib [PhiberOptik]

Pas pas: comment crer un logiciel avec Visual Basic.Net?

dans la liste droulante Projet. 5) Slectionnez le groupe Sortie principale dans la liste, puis cliquez sur OK. 6) Dans le menu Gnrer, choisissez Gnrer Programme d'installation de PC Sleeper. Pour crer un raccourci pour PC Sleeper 1) Slectionnez le projet Programme d'installation de PC Sleeper dans l'Explorateur de solutions. 2) Dans l'diteur du systme de fichiers, slectionnez le nud Sortie principale de PC Sleeper (Actif). 3) Dans le menu Action, choisissez Crer un raccourci vers Sortie principale de PC Sleeper. Cette action ajoute un nud Raccourci vers Sortie principale de PC Sleeper (Actif). 4) Renommez le raccourci en Raccourci vers PC Sleeper. 5) Slectionnez Raccourci vers PC Sleeper et faites-le glisser vers le dossier Bureau de l'utilisateur dans le volet de gauche. 6) Slectionner Raccourci vers PC Sleeper, dans la fentre Proprits, Attribuer la proprit Icon une icne, clic sur Parcourir, dans la liste droulante choisissez PC Sleeper, puis Ajouter un fichier, l'icne est prfrable doit se trouver dans le dossier du projet PC Sleeper. 7) Faites glisser l'icne dans le Dossier d'application. Pour ajouter un lien vers PC Sleeper dans le menu Dmarrer
Premirement on va ajouter un dossier dans le menu dmarrer de l'utilisateur et ensuite dans ce dossier on va placer le lien. 1) Clic droit sur Menu Programmes de l'utilisateur, Ajouter\ Dossier, nommez-le PC Sleeper. 2) Mme mthode pour crer un raccourci, sauf dans l'tape 4 choisissez le nom PC Sleeper, dans l'tape 5 faites-le glisser dans le sous dossier PC Sleeper du dossier Menu Programmes de l'utilisateur. 3) Attribuez-le une icne, mme mthode.

Et pour l'aide???
Attention pour l'aide. Quand vous tapez F1, le programme cherche dans le dossier de l'application le fichier aide.pdf, c'est nous qui a prcis le chemin d'aide. Mais qu'est ce qui se passe quand on installe le logiciel dans un autre ordinateur et qu'on tape F1, le programme va chercher le fichier aide.pdf dans le dossier d'application, et qu'est ce qu'il va trouver? Rien. Oui, rien le fichier aide.pdf ne se trouve pas dans le dossier d'application de l'ordinateur cible. Il faut l'ajouter. Regardez Img23, clic sur Dossier d'application dans la partie droite, dans la partie gauche, clic droit\ Ajouter\Fichier et naviguez jusqu'au fichier aide.pdf

Gnrer le projet 1) Slectionnez le projet Programme d'installation de PC Sleeper dans l'Explorateur de solutions . 2) Dans le menu Gnrer, choisissez Gnrer Programme d'installation de PC Sleeper. Installer le logiciel
Cliquez sur Projet\ Installer

O se trouve la package que je dois distribuer?


Il se trouve dans le chemin du projet PC Sleeper, Setup, Debug, le fichier distribuer s'appel Setup.Exe ou Setup.msi , ce dernier inclut le package Windows installer. N.B: tous les programme s conus sous la plateforme .Net, ncessitent que Framework doive tre install dans l'ordinateur cible. Dans notre cas au moins Framework 1.1 doive tre install. Voila, flicitation pour votre premier programme avec Visual Basic.Net. mais il y a une chose noter: nous n'avons mme pas exploit 1% de la force de Visual Basic.Net. c'est juste un premier pas dans un ocan de programmation orient objet. Fin.
Brahim Lamzib (PhiberOptik) Le 24 aout 200

Par Brahim Lamzib [PhiberOptik]