cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 2023
-
28 sept. 2007 à 15:41
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 2023
-
1 oct. 2007 à 18:57
J'ai déjà fait un Post sur le forum mais je n'ai pas eu de nouvelle.
J'aimerais au moins savoir si c'est réalisable ce que je demande ou bien c'est que j'ai pas de réponse donc c'est impossible de dessiner plus d'une ligne dans un picturebox.
Je veux comprendre quoi fait quoi dans mon code....
Je suis capable de dessiner des croix avec des coordonnées géographiques à partir d'un tableau.
Maintenant, je veux relier des lignes à partir de certain points...
Je suis capable de dessiner seulement une ligne...
Mais je suis obliger d'utiliser cette ligne de code pour que ca fonctionne.
objGraphics.Clear(Color.White).
Si je mets cette ligne en commentaire, lorsque je dessine une ligne, mon picturebox devient noir. Et la couleur de fond, de mon picturebox. est blanche.
Je suis incapable de dessiner plus d'une ligne....
Il existe une solution à mon problème...
Merci de votre aide
Private
Sub cmdTracer_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles cmdTracer.Click
Dim i
As
Integer
Dim CoordY1
As
Double, CoordX1
As
Double, CoordY2
As
Double, CoordX2
As
Double..............
Dim objBitMap
As
New Bitmap(X_initial, Y_initial)
objGraphics = Graphics.FromImage(objBitMap)
objGraphics.Clear(Color.White)
Déclare un graphics en global, crée une bitmap dans ta picturebox, et prends le graphics depuis cette bitmap
Dans le load de ta form :
TaPictureBox.Image = New System.Drawing.Bitmap(TaPictureBox.Width, TaPictureBox.Height)
TaPictureBox_Graphics = System.Drawing.Graphics.FromImage(TaPictureBox.Image)
Puis, dés que tu veut dessiner quelque chose sur ta picturebox :
TaPictureBox_Graphics.DrawLine(...)
TaPictureBox_Graphics.DrawLine(...)
TaPictureBox.Invalidate()
Non, il faut mettre
PictureBox1.Image = New System.Drawing.Bitmap(PictureBox1.Width, PictureBox1.Height)
PictureBox1_Graphics = System.Drawing.Graphics.FromImage(PictureBox1.Image)
Dans à l'initialisation. (load de la form par exemple)
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 28 sept. 2007 à 17:04
Salut et merci pour ta réponse...
Bon, je suis débutant en .Net et certain terme me sont inconnus.
Peux-tu me montrer un exemple de code svp??:
Déclare un graphics en global, crée une bitmap dans ta picturebox, et prends le graphics depuis cette bitmap
Évidemment j'ai un erraur dans ton code (pour le moment) dans ma Form_Load
PictureBox1.Image =
New System.Drawing.Bitmap(PictureBox1.Width, PictureBox1.Height)
PictureBox1_Graphics = System.Drawing.Graphics.FromImage(PictureBox1.Image)
J'ai un erreur là où s'est souligné:
Bref comment je peux déclarer un graphic en global.
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 1 oct. 2007 à 13:18
Salut, c'est encore moi...
J'ai tout fais ce que tu me dit et maintenant, il y a plus rien qui se dessine...
Je te montre ce que j'ai fais.....
P.S. Lorsque je veux dessiner mes lignes, mes variables CoordX1, CoordX2, CoordY1 et CoordY2
ont tous une valeur et il s sont tous des variables Double.
Bref vois-tu où je fais un erreur ???
Merci encore de ton aide...
Dans ma Form_Load j'ai mis: PictureBox1.Image =
New System.Drawing.Bitmap(PictureBox1.Width, PictureBox1.Height)
PictureBox1_Graphics = System.Drawing.Graphics.FromImage(PictureBox1.Image)
J'ai déclaré cette variable
Public
Picturebox1_Graphics
As System.Drawing.Graphics
Et j'ai mis ce code pour dessiner mes lignes lorsque j'appuis sur un bouton
Ca vient peut-être du compact framework
Essaye ca dans un autre projet :
Private Picturebox1_Graphics As System.Drawing.Graphics
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
PictureBox1.Image = New System.Drawing.Bitmap(PictureBox1.Width, PictureBox1.Height)
Picturebox1_Graphics = System.Drawing.Graphics.FromImage(PictureBox1.Image)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Picturebox1_Graphics.DrawLine(System.Drawing.Pens.Red, 0, 0, PictureBox1.Width, PictureBox1.Height)
PictureBox1.Invalidate()
End Sub
Tu as essayer juste avec le minimum ?
Je t'envois mon email par mp mais il faut que ton code soit un résumer et non toute ton application (comme le code que je t'ai proposé précédemment). Sinon, je pourrais pas regarder.