GDI e grafica...

giovedì 21 ottobre 2004 - 09.49

H2MARON Profilo | Junior Member

Ciao a tutti!
Qualcuno sa disegnare un punto, una riga, un quadrato dentro una picturebox?...

non ci capisco un cacchio!
Grazie
Tommy

Andy Profilo | Senior Member

Ciao..non so se posso esserti d'aiuto, in MSDN c'è un capitolo su GDI e, tra le altre cose x esempio x creare una linea, da quello che ho capito devi crearti l'oggetto "Graphics" ed una "Penna":


Creazione di una linea in un Windows Form (Visual Basic)

Esempio

Dim myPen As New System.Drawing.Pen(System.Drawing.Color.Red)
Dim formGraphics as System.Drawing.Graphics
formGraphics = Me.CreateGraphics()
formGraphics.DrawLine(myPen, 0, 0, 200, 200)
myPen.Dispose()
formGraphics.Dispose()

Per ridisegnare automaticamente il contenuto è necessario eseguire l'override del metodo OnPaint.

È necessario chiamare sempre il metodo Dispose per gli oggetti che utilizzano le risorse di sistema come gli oggetti Pen e Graphics.

Andy Profilo | Senior Member

Ciao..non so se posso esserti d'aiuto, in MSDN c'è un capitolo su GDI e, tra le altre cose x esempio x creare una linea, da quello che ho capito devi crearti l'oggetto "Graphics" ed una "Penna":


Creazione di una linea in un Windows Form (Visual Basic)

Esempio

Dim myPen As New System.Drawing.Pen(System.Drawing.Color.Red)
Dim formGraphics as System.Drawing.Graphics
formGraphics = Me.CreateGraphics()
formGraphics.DrawLine(myPen, 0, 0, 200, 200)
myPen.Dispose()
formGraphics.Dispose()

Per ridisegnare automaticamente il contenuto è necessario eseguire l'override del metodo OnPaint.

È necessario chiamare sempre il metodo Dispose per gli oggetti che utilizzano le risorse di sistema come gli oggetti Pen e Graphics.

H2MARON Profilo | Junior Member

Grazie...ora provo!

Ciao

H2MARON Profilo | Junior Member

scusa la mia ignoranza...ma cosa significa "eseguire l'override del metodo OnPaint"?
Grazie!

Andy Profilo | Senior Member

Credo che si riferisca al fatto che ogni volta che viene scatenato l'evento Paint della finestra, nel refresh della form perderesti tutto ciò che è il tuo GDI; x evitare ciò devi "richiamare" il tuo disegno dentro quest'evento, in modo che ad ogni paint rinfresca anche le tue linee.

Ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5