# Visual Basic 2012 Lesson 22– Drawing Rectangle

#### [Lesson 21] << [CONTENTS] >> [Lesson 23]

We have learned how to create the Graphics and the Pen objects to draw straight lines in Visual Basic 2012 in the previous lesson. Now we shall learn how to draw various shapes such as rectangle, square, ellipse and circle.

### 22.1 Creating a Rectangle

To draw a rectangle on the screen in Visual Basic 2012, there are two ways:

(i)The first way is to draw a rectangle directly using the DrawRectangle method by specifying its upper-left corner’s coordinate and its width and height. You also need to create a Graphics and a Pen object to handle the actual drawing. The method to draw the rectangle is DrawRectangle.The syntax is:

```myGraphics.DrawRectangle(myPen, X, Y, width, height)
```

Where myGraphics is the variable name of the Graphics object and myPen is the variable name of the Pen object created by you. You can use any valid and meaningful variable names. X, Y is the coordinate of the upper left corner of the rectangle while width and height are self-explanatory, i.e, the width and height of the rectangle.
The sample code is shown below:

```Dim myPen As Pen
myPen = New Pen(Drawing.Color.Blue, 5)
Dim myGraphics As Graphics = Me.CreateGraphics
myGraphics.DrawRectangle(myPen, 0, 0, 100, 50)
```

(ii) The second way is to create a rectangle object first and then draw this triangle using the DrawRectangle method. The syntax is as shown below:

myGraphics.DrawRectangle(myPen,myRectangle) where myRectangle is the rectangle object created by you, the user.

The code is as follows:

```Dim myRectangle As New Rectangle
myRect.X = 10
myRect.Y = 10
myRect.Width = 100
myRect.Height = 50
```

You can also create a rectangle object using a one-line code as follows:

```Dim myRectangle As New Rectangle(X,Y,width, height)
```

and the code to draw the rectangle is

```myGraphics.DrawRectangle(myPen, myRectangle)
```

The sample code is shown below:

### 22.2 Customizing Line Style of the Pen Object

The shape we draw so far are drawn with the solid line, we can actually customize the line style of the Pen object so that we have dotted line, a line consisting of dashes and more. For example, the syntax to draw a dotted line is shown below:

```myPen.DashStyle=Drawing.Drawing2D.DashStyle.Dot
```

Where the last argument Dot specifies a particular line DashStyle value, a line that makes up of dots here. The following code draws a rectangle with a red dotted line.

```Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myPen As Pen
myPen = New Pen(Drawing.Color.Red, 5)
Dim myGraphics As Graphics = Me.CreateGraphics
myPen.DashStyle = Drawing.Drawing2D.DashStyle.Dot
myGraphics.DrawRectangle(myPen, 10, 10, 100, 50)
End Sub
```

The output image is shown below:

The possible values of the line DashStyle of the Pen are listed in the table below: