
Crew .NET |
|
Ok, ik heb zelf een beetje moeten zoeken want ik kende de Drawing Class al in C# maar echt vormen gaan tekenen had ik nog niet gedaan met VB.NET. De code is een zelfgeschreven functie die vier parameters meekrijgt: x, y, width en height. Dit dient om te bepalen waar de vorm moet getekend worden en hoe groot.
'Deze voer integers kunnen in jouw geval van een textbox komen
Dim a, b, c, d As Integer
a = 10
b = 10
c = 250
d = 300
'klasse Graphics in een variabele steken
Dim tekenen As Graphics
'subroutine om een rechthoek te tekenen
Private Sub TekenRechthoek(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer)
'een struct van het type rectangle declareren
Dim vierhoek As Rectangle
'de huidige form instellen als de form waar moet getekend worden
tekenen = Graphics.FromHwnd(ActiveForm().Handle)
'alles meegeven dat nodig is (x en y positie en breedte/hoogte)
vierhoek = New Rectangle(x:=a, y:=b, Width:=c, Height:=d)
'de figuur tekenen
tekenen.DrawRectangle(Pens.Black, rect:=vierhoek)
End Sub
Private Sub TekenCirkel(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer)
'hier geldt hetzelfde alleen dan voor een cirkel
Dim cirkel As RectangleF
tekenen = Graphics.FromHwnd(ActiveForm().Handle)
cirkel = New RectangleF(x:=a, y:=b, Width:=c, Height:=d)
tekenen.DrawEllipse(Pens.Black, rect:=cirkel)
End Sub
'Deze voer integers kunnen in jouw geval van een textbox komen Dim a, b, c, d As Integer a = 10 b = 10 c = 250 d = 300 'klasse Graphics in een variabele steken Dim tekenen As Graphics 'subroutine om een rechthoek te tekenen Private Sub TekenRechthoek(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer) 'een struct van het type rectangle declareren Dim vierhoek As Rectangle 'de huidige form instellen als de form waar moet getekend worden tekenen = Graphics.FromHwnd(ActiveForm().Handle) 'alles meegeven dat nodig is (x en y positie en breedte/hoogte) vierhoek = New Rectangle(x:=a, y:=b, Width:=c, Height:=d) 'de figuur tekenen tekenen.DrawRectangle(Pens.Black, rect:=vierhoek) End Sub Private Sub TekenCirkel(ByVal a As Integer, ByVal b As Integer, ByVal c As Integer, ByVal d As Integer) 'hier geldt hetzelfde alleen dan voor een cirkel Dim cirkel As RectangleF tekenen = Graphics.FromHwnd(ActiveForm().Handle) cirkel = New RectangleF(x:=a, y:=b, Width:=c, Height:=d) tekenen.DrawEllipse(Pens.Black, rect:=cirkel) End Sub
Je kan de functies aanroepen op deze manier als de waardes van de parameters van TextBoxen komen:
TekenRechthoek(CType(TextBox1.Text, Integer), CType(TextBox2.Text, Integer), CType(TextBox3.Text, Integer), CType(TextBox4.Text, Integer))
TekenRechthoek(CType(TextBox1.Text, Integer), CType(TextBox2.Text, Integer), CType(TextBox3.Text, Integer), CType(TextBox4.Text, Integer))
|