bonjour.
s'il vous plait, je dois créer un code qui en appuyant sur un bouton fait doubler l'aire d'un rectangle(précedemment dessiné) à chaque seconde (avec 1 timer)..
quelqu'un pourrait m'aider s'il vous plait?
Version imprimable
bonjour.
s'il vous plait, je dois créer un code qui en appuyant sur un bouton fait doubler l'aire d'un rectangle(précedemment dessiné) à chaque seconde (avec 1 timer)..
quelqu'un pourrait m'aider s'il vous plait?
Il ne faut pas se baser sur le dessin... il faut garder en mémoire les données sur le rectangle, travailler sur les données, et redessiner le rectangle en fonction de ces données.
Avec les éléments que tu donnes c'est difficile de te donner une réponse plus précise... essaie d'être plus concret dans ta demande si tu veux des réponses utiles
en fait on me demande de dessiner un rectangle tel que la largeur soit égale à 2 fois la hauteur. le code que j'ai utilisé est ceci:
la il me faut créer un code qui puisse permettre de faire varier la forme de mon rectangle( l'aire doit doubler a chaque tick du timer) avec le temps.Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Dim g As Graphics = Pic1.CreateGraphics Dim crayon As New Pen(Color.Blue) Dim h As Integer = CInt(TextBox1.Text) Dim l As Integer l = 2 * h g.DrawRectangle(crayon, CSng((Pic1.Width / 2) - h), _ CSng((Pic1.Height / 2) - h / 2), l, h) g.Clear(Color.White) g.FillRectangle(Brushes.Blue, CSng((Pic1.Width / 2) - h), _ CSng((Pic1.Height / 2) - h / 2), l, h) g.DrawRectangle(crayon, CSng((Pic1.Width / 2) - h), _ CSng((Pic1.Height / 2) - h / 2), l, h)
j'espere que c'est plus concis. merci
Il faudrait que tu déclares dans ta classe un champ de type Rectangle, que tu modifierais à chaque tick du timer, par exemple :
Code:
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 Private rect As Rectangle = Rectangle.Empty Private Sub boutonDémarrer_Click(ByVal sender As Object, ByVal e As EventArgs) Dim h As Integer = CInt(TextBox1.Text) Dim l As Integer l = 2 * h rect.Left = 0 rect.Top = 0 rect.Width = l rect.Height = h DessinerRectangle(rect) timer1.Start() End Sub Private Sub timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Dim l As Integer Dim h As Integer l = 2 * Math.Min(rect.Width, rect.Height) h = Math.Max(rect.Width, rect.Height) rect.Width = l rect.Height = h DessinerRectangle(rect) End Sub