GDI+ et la souris

Signaler
Messages postés
7
Date d'inscription
mardi 2 mars 2004
Statut
Membre
Dernière intervention
2 juillet 2008
-
cretthie
Messages postés
133
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 janvier 2012
-
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

Messages postés
180
Date d'inscription
jeudi 21 août 2003
Statut
Membre
Dernière intervention
26 novembre 2007
1
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.
Messages postés
133
Date d'inscription
mercredi 27 juin 2012
Statut
Membre
Dernière intervention
10 janvier 2012
1
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