Menggambar Garis Pada Form

45 Gambar 3.22 Koordinat Display GDI+ Gambar 3.23 Menggambar Garis dari titik 0,0 sampai 120,80

3.3.3 Menggambar Garis Pada Form

Penggambaran Grafik form dapat dilakukan melalui Objek Grafik yang dapat dideklarasikan sebagai berikut: Dim MyGraphics As System.Drawing.Graphics = Me.CreateGraphics Objek Grafik menyediakan berbagai metode untuk menggambar seperti DrawLine, DrawRectangle, dll Dalam penggambaran, membutuhkan Objek Pen penyedia atribut Warna dan Ketebalan garis dalam ukuran pixel. Objek Pen dapat dideklarasikan sebagai berikut: Dim Pen As New System.Drawing.PenWarna,Tebal Universitas Sumatera Utara 46 Warna adalah warna yang diinginkan, dan tebal adalah tebal pen dalam ukuran point. Contoh program GDI+ yang pertama: Option Explicit On Imports System Imports System.Windows.Forms Imports Microsoft.VisualBasic Public Class MyForm : Inherits FormSystem.STAThread _ Public Shared Sub Main Application.Run New MyForm End Sub Public Sub New Constructor Me .Text = Mengambar garis pada Form End Sub Private Sub MyForm_ClickSender As Object , e As System.EventArgs Handles MyBase .Click Dim MyPen As New System.Drawing.PenSystem.Drawing.Color.Red,3 Dim MyGraphic As System.Drawing.Graphics = Me .CreateGraphics MyGraphic.DrawLineMyPen,10,10,200,100 End Sub End Class Kemudian simpan program di atas dengan mana grafik.vb a Proses Kompilasi Proses kompilasi dengan menggunakan perintah: Vbcgrafik.vbr:System.dllr:System.Windows.For ms.dllr:System.Drawing.dll Universitas Sumatera Utara 47 Ketika dijalankan, dan klik pada form akan menghasilkan tampilan: Gambar 3.24 Garis Pada Form Catatan: Mengenai pemrogram form pada VB.NET dapat dibaca di ebook pemrogram form pada VB.NET Salah satu kelemahan dari cara di atas adalah, kalau form mengalami refresh, garis yang telah digambarkan tersebut akan hilang VB.NET tidak menyediakan property AutoRedraw seperti yang terdapat pada VB6 Untuk membuktikannya minimize dan maximize kembali form diatas, garis tersebut akan hilang. b Melakukan Overriding Te rhadap Metoda Onpaint OnPaint Event Handle adalah event yang dibangkitkan setiap kali form mengalami refresh pada saat minimize , maximize maupun ditimpa oleh form lain. Jika dilakukan overriding terhadap Event ini dan menempatkan perintah penggambaran garis di dalamnya ini, maka garis tersebut digambar setiap proses refresh. Universitas Sumatera Utara 48 Parameter PaintEventArgs pada Sub OnPaint merupakan objek Grafik. Contoh: Option Explicit On Imports System Imports System.Windows.Forms Imports Microsoft.VisualBasic Public Class MyForm Inherits Form System.STAThread _ Public Shared Sub Main Application.Run New MyForm End Sub Public Sub New Constructor Me .Text = Membuat garis pada Form dengan OnPaint End Sub Protected Overrides Sub OnPaint ByVal e As PaintEventArgs Dim MyPen As New System.Drawing.PenSystem.Drawing.Color.Red,3 MyBase .OnPainte e.Graphics.DrawLineMyPen,10,10,200,100 End Sub End Class Kalau program di atas dijalankan, akan menampilkan garis pada form dan tetap akan ada walaupun form direfresh. Catatan: Pada contoh diatas melakukan overriding terhadap metoda OnPaint yang ada pada Base class dengan Metoda baru yang dibuat di dalamnya mengambarkan garis, sehingga setiap kejadian OnPaint akan menjalankan Event baru tersebut. Kemudian dalam koding ditulis MyBase.OnPainte, artinya menjalan kembali event OnPaint pada Base class yang telah overriding. Universitas Sumatera Utara 49

3.3.4 Menggambar Grafik Vektor 2 Dimensi