GDI+ et la souris

alainh2401 Messages postés 7 Date d'inscription mardi 2 mars 2004 Statut Membre Dernière intervention 2 juillet 2008 - 12 oct. 2007 à 16:15
cretthie Messages postés 133 Date d'inscription mercredi 27 juin 2012 Statut Membre Dernière intervention 10 janvier 2012 - 15 oct. 2007 à 02:31
Bonjour,

J'aimerais savoir comment je pourrais faire pour dessiner un rectangle genre rectangle de selection, sur un PANEL par exemple sans pour autant avoir un effet de clignotement, j'ai essayé avec le double buffer mais dans le "mousenmove" j'ai une erreur générale.

La documentation de msdn est plutot "faible" sur le sujet

Merci d'avance pour vos réponse.

2 réponses

medelidrissi Messages postés 180 Date d'inscription jeudi 21 août 2003 Statut Membre Dernière intervention 26 novembre 2007 2
12 oct. 2007 à 17:44
Bonjour,

Je ne sais pas ce que tu veux faire avec ton rectangle. Cependant, voici la
meilleure méthode (à mon avis) pour dessiner des formes dans un controle :

En utilisant l'événement paint ,

    Private Sub Panel1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel1.Paint
        Using g As Graphics = e.Graphics
            g.DrawRectangle(New Pen(Color.Black), 0, 0, 100, 50)
        End Using
    End Sub

Bonne programmation.

Cordialement medelidrissi

<hr />En Informatique, rien n'est impossible. Mais, ce n'est pas toujours évident.
0
cretthie Messages postés 133 Date d'inscription mercredi 27 juin 2012 Statut Membre Dernière intervention 10 janvier 2012 1
15 oct. 2007 à 02:31
essai ca... il te suffit de rnommer le panel p06 et je crois que c'est tout..
si ca marche pas me redire et creer un button1
le code pourrait etre amelioré, c'est sur...

a plus

Public Class GraphicTest


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Application.Exit()
    End Sub
 
 
    Dim m_Graphics As Graphics


 


    Private Sub Form1_Load(ByVal sender As Object, _
            ByVal e As System.EventArgs) Handles MyBase.Load


        m_Graphics = Me.P06.CreateGraphics
       


    End Sub


    Private Sub Graphisme_Shown(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles Me.Shown


        maMethode(m_Graphics)


    End Sub


 


    Sub maMethode(ByVal MonGraphics As Object)


        Dim r As Rectangle
        r = New Rectangle(0, 0, 15, 20)
        MonGraphics.FillRectangle(New SolidBrush(Color.Black), r)
        r = New Rectangle(15, 0, 30, 20)
        MonGraphics.fillRectangle(New SolidBrush(Color.Black), r)
    End Sub




End Class
0
Rejoignez-nous