Exercice Visual Basic : Papillon Volante
Rédigé par GC Team, Publié le 07 Janvier 2012, Mise à jour le Samedi, 17 Décembre 2022 16:26
Participez au vote ☆☆☆☆☆★★★★★
Ecrire le code VB qui permet de réaliser l'interface suivante:
Le principe c'esr de faire bouger une image dans l'interface selon la vitesse déterminer.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
Option Explicit On Option Strict On Public Class frmExo3 Private Sub btnQuit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnQuit.Click End End Sub Private Sub frmExo3_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load Vsens = 1 Hsens = 1 marge = 10 ouvert = True End Sub Private Sub TimAiles_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimAiles.Tick Dim pasAvance As Int32 'pas d'avance en pixel 'lire la vitesse pasAvance = Me.potPasAvance.Value 'lire Me.TxtAvance.Text = pasAvance.ToString 'afficher 'rebondir sur les bords 'Sens horizontal If Me.PictPapillon.Left + Me.PictPapillon.Width + marge > Me.Width Then Hsens = -1 'à gauche End If If Me.PictPapillon.Left < marge Then Hsens = 1 'à droite End If 'Sens vertical If Me.PictPapillon.Top < marge Then Vsens = -1 'descendre End If If Me.PictPapillon.Top + Me.PictPapillon.Height + marge > Me.Height Then Vsens = 1 'monter End If 'calculer la nouvelle position Me.PictPapillon.Left += pasAvance * Hsens Me.PictPapillon.Top -= pasAvance * Vsens 'attention l'axe windows est vers le bas 'Battre des ailes If ouvert Then 'ailes ouvertes If Hsens > 0 Then Me.PictPapillon.Image = Image.FromFile("BFLYouvertGD.bmp") Else Me.PictPapillon.Image = Image.FromFile("BFLYouvertDG.bmp") End If ouvert = False Else 'ailes fermées If Hsens > 0 Then Me.PictPapillon.Image = Image.FromFile("BFLYfermeGD.bmp") Else Me.PictPapillon.Image = Image.FromFile("BFLYfermeDG.bmp") End If ouvert = True End If Me.PictPapillon.Refresh() End Sub End Class |
