• Aucun résultat trouvé

Vous avez sans doute réalisé quelques itérations de la boucle. Je ne pense pas que vous soyez allé jusqu’aux 50 prévues.

Lorsque les itérations vous ont permis de tester les deux cas possibles (valeur inférieure ou supérieure à 0,5), la suite de la boucle n’apporte rien.

Que faire alors pour accélérer le débogage ? Il y a plusieurs solutions :

− vous pouvez arrêter purement et simplement l’exécution du programme (par exemple, vous avez identifié une erreur, il faut donc la corriger). Dans ce cas, commande

Exécuter/Fin (à gauche de la commande, vous avez le dessin du bouton correspondant

dans la barre d’outils) ;

− si vous voulez continuer normalement l’exécution du programme (qui ne s’arrêtera alors plus, sauf s’il rencontre un nouveau point d’arrêt), Exécuter/Continuer (ou F5 ou le bouton adéquat de la barre d’outils) ;

− si vous voulez terminer l’exécution de la boucle pour retrouver le mode débogage juste après, soit vous posez un point d’arrêt sur l’instruction suivante (ici le End Sub), soit vous cliquez sur cette ligne End Sub et faites Débogage/Exécuter jusqu’au

curseur soit, dans le cas présent, faites Débogage/Pas à pas sortant puisque la fin de

la boucle coïncide avec celle de la procédure.

3. Conclusion

Vous savez maintenant utiliser le débuggeur. Lorsqu’un de vos programmes ne fonctionne pas comme il le devrait, essayez de localiser l’erreur à la main. C’est très formateur !

Si cette recherche ne donne rien, exploitez le débuggeur.

Il est évident qu’un bon développeur doit parfaitement maîtriser l’usage de cet outil. N’hésitez donc pas à le mettre en avant lors de l’épreuve pratique. C’est bien utile pour illustrer le fonctionnement d’un programme.

3984 TG 77

l’interface

L’objet des exercices qui suivent est de mettre en œuvre de façon systématique les concepts vus dans le cours pour que cela devienne un automatisme.

Plus que de simples exercices d’application, ils sont plutôt un complément de cours. Ne les bradez pas !

Enfin, faites les exercices dans l’ordre, la difficulté étant croissante.

Résumons notre savoir des séquences 1 à 6 :

– nous savons manipuler les bases de l’interface graphique en créant une feuille et en manipulant les deux contrôles les plus simples (la zone de texte et le bouton) ;

– nous savons utiliser les événements, bien que nous n’en connaissions pour le moment qu’un petit nombre ;

– nous savons grosso modo ce qu’est un module et un objet. En tout cas, nous en connaissons suffisamment pour écrire du code et utiliser des objets ;

– nous connaissons les instructions VB permettant de coder un algorithme.

Nous allons travailler de nouveau sur notre programme avec les clients. Cette fois, nous ferons moderne avec une interface graphique.

Votre travail consistera avant tout à générer le formulaire et à faire du copier/coller du code que nous avions écrit dans les différents événements.

Exercice 1 : Affichage

Faites une interface graphique permettant à l’utilisateur de saisir les différentes caractéristiques d’un client.

Il vous faudra autant de zones de texte que de champs dans la structure.

Exercice 2 : Initialisation du client

Je souhaite maintenant que vous repreniez le type Client et une variable associée. Il suffit de faire un copier de notre ancien programme console pour le placer au bon endroit dans le code. Je veux ensuite que vous ajoutiez un bouton Enregistrer qui, lorsque l’on clique dessus, prend les différentes valeurs saisies dans le formulaire pour initialiser notre variable client.

Évidemment, l’utilisateur est sensé avoir rempli les différentes zones de texte (enfin, les

Exercice 3 : Mise à zéro du formulaire et affichage du client

Je souhaite maintenant que vous ajoutiez deux nouveaux boutons :

– Vider doit mettre à zéro l’ensemble de la feuille, c’est-à-dire vider le contenu de chaque zone de texte ;

– Afficher doit afficher dans le formulaire la valeur de notre variable Cl (c’est donc l’inverse d’Enregistrer).

Exercice 4 : Affichage du nombre de jours

Ajoutez au formulaire un contrôle qui doit contenir, lorsque vous affichez le client, le nombre de jours depuis lequel il est client de l’entreprise.

Vous aurez besoin de la fonction VB Date renvoyant la date système (date du jour configurée sur l’ordinateur).

Exercice 5 : Problème d’ergonomie

Ce formulaire possède un problème : lorsque je saisis un client, je peux taper une valeur quelconque dans le contrôle du nombre de jours. Or, d’après mon sujet, ce contrôle ne doit pas servir à taper une valeur, mais uniquement à afficher un résultat venant d’un calcul réalisé par l’application.

Pourriez-vous corriger cela ? Une petite aide : il faut modifier une propriété du contrôle. Laquelle ? J’ai dit petite aide, pas solution !

Exercice 6 : Problème d’ergonomie bis

Dire depuis combien de jours un client est client, ce n’est pas forcément très explicite. J’aimerais mieux un affichage indiquant le nombre d’années, de mois et de jours.

Faites cette modification. Vous écrirez un sous-programme prenant un nombre de jours et renvoyant le nombre d’années, de mois et de jours correspondants. Vous changerez également l’étiquette correspondante.

Inutile de faire du zèle vis-à-vis des différentes années bissextiles ou du fait que certains mois ont plus de jours que d’autres.

Pour réaliser la correction, j’ai eu besoin d’utiliser l’opérateur de concaténation de chaîne de caractères. Vous en aurez peut-être besoin également. Eh bien, sous VB, c’est « & ».

3984 TG 79

Documents relatifs