DÉVELOPPEMENT RAPIDE D'APPLICATIONS




Notes de cours 7

Menu et Debug et autres controls



Le "debugging", ou déboguage, si vous préférez

Il arrive assez fréquemment qu'un programmeur fasse une erreur en écrivant le code. Les erreurs de syntaxe sont habituellement assez évidentes et le compilateur les identie dans le code en soulignant en bleu.

Souvent, il s'agit d'une simple erreur d'orthographe car un nom d'objet ou de procédure a été mal écrit.

Parfois cela provient du fait de copier le code de la page Web et l'insérer dans l'éditeur. Il est très commun de faire des erreurs avec les paramètres à ce moment.

Attention: ne copiez/collez pas les Private Sub ... ; créez l'objet, faites un double-click et laissez au système à générer le nom de module avec les paramètres appropriés. Ensuite copiez/collez le code entre le Private Sub et le End Sub.

Certaines erreurs de syntaxe, ou de logique, apparaissent seulement à l'exécution. Les erreurs de logique sont souvent plus difficiles à identifier. On doit se fier au message pour les corriger. La plupart des logiciels ont une fonction de debugging qui aide à la correction des erreurs dans un programme.










Si l'erreur n'est pas évidente, on peut essayer de déboguer en créant des breakpoints. En regardant le contenu des objets ont peut réussir à retracer l'erreur. On peut aussi faire step à travers du programme avec la touche <F11> ce qui permet de voir la séquence d'exécution des lignes de code.















La création d'un Menu


Pour que notre application ressemble le plus possible au standard Windows, il est préférable de créer une barre de menu au haut du form.

Le menu du form provient de l'objet MainMenu du toolbox.

Il s'agit simplement d'insérer les items de menu dans la structure aux endroits désignés.

L'usage du signe & devant une lettre identifie un hot key pour cet item qui sera accessible à partir du clavier avec le Alt.

Attention: il est important de faire Right-click -->Edit names sur le menu et de changer MenuItem1, etc. à des noms significatifs pour tous les items de menu qui apparaîtront dans le code.

Il peut y avoir plusieurs menus pour un form. On spécifie le menu avec la propriété Menu du form.








Validation des données

Une des façons les plus simple de valider (vérifier l'exactitude) des données entrées dans un form est d'utiliser l'event: Validating.

Le validating est lancé lors de la saisie, au moment ou on essaie de quitter le textbox. Si une condition d'erreur survient, on peut empêcher de quitter le textbox tant que l'erreur subsiste.

C'est le code e.Cancel = True qui garde le curseur sur l'objet.


 Private Sub txtmontant_Validating(ByVal sender As System.Object,  _
	ByVal e As System.ComponentModel.CancelEventArgs)  Handles txtMontant.Validating
        If txtMontant.Text > 100 Then
            MsgBox("Montant est trop gros!")
            e.Cancel = True
        End If
    End Sub




Évidemment, on ne peut pas vérifier si aucune donnée n'a été entrée puisque le curseur doit passer sur le textbox pour activer le validating.

Pour tester pour vide, on utilise le code comme:


	If txtNom.text = "" Then
		MsgBox("Entrez le nom")
		txtNom.Focus()
		Exit Sub
	End If




Utilisation d'un Timer


Voici un petit exercice pour démontrer comment utiliser un timer et en même temps démontrer une nouvelle propriété du form: Opacity. Remarquez que ceci n'est pas d'une grande importance mais ça peut parfois servir à impressioner un client.

D'abord, mettez la propriété Opacity du form à 0.

Mettez sur le form un objet Timer. Changez la propriété Enabled à True et Interval à 50.





Après avoir fait un double-click, insérez le code dans le module.

Private Sub Timer1_Tick(ByVal sender As System.Object, _
		ByVal e As System.EventArgs)  Handles Timer1.Tick
		Me.Opacity += 0.01
		If Me.Opacity >= 1 Then
			Timer1().Enabled = False
			Beep()
		End If
End Sub







Haut de la page

Accueil          Tutoriels