Site Renkleri

Visual Basic Dersleri

GDI+



GDI+, .NET Framwork’deki System.Drawing sınıfı altında desteklenmektedir. Bu sınıf aracılığı ile Windows altında görsel özelliklere sahip uygulamalar geliştirebiliriz. GDI, C++ dili ile grafik çizmek için oluşturulmuş sınıflar kümesi idi. Ancak GDI sorunlu idi. Bunun üzerine GDI dili yenilendi ve GDI + haline getirdi. Öyle ki GDI düşük ve orta düzey programlama ortamı sağlıyordu. Ancak GDI + ile yüksek düzeyli programlama yapmak mümkün olabilmektedir.

GDI+ içindeki tüm sınıflar 6 adet namespace içinde toplanmıştır;
System.Drawing
System.Drawing.Desing
System.Drawing.Printing
System.Drawing.Imaging
System.Drawing.Drawing2D
System.Drawing.Text

System.Drawing Sınıfı Metotları;

Metot Açıklama
AddMetaFileComment Var olan meta dosyasına text açıklama ekler.
BeginContainer Overloaded. Yeni grafik container başlatır.
Clear Graphics objesini ve özel renkleri temizler.
DrawArc Overloaded. Yay çizer.
DrawEllipse Overloaded. Elips çizer.
DrawImage Overloaded. Resim çizer.
DrawLine Overloaded. Çizgi çizer.
DrawLines Overloaded. Ard arda bağlantılı satırlar çizer.
DrawPie Overloaded. Pasta çizer.
DrawPolygon Overloaded. Çokgen (poligon) çizer.
DrawRectangle Overloaded. Dikdörtgen çizer.
DrawRectangles Overloaded. Ard arda dikdörtgenler çizer.
DrawString Overloaded. Text çizer.
FillEllipse Overloaded. Brush kullanarak elipsin içini doldurur.
FillPie Overloaded. Brush kullanarak pastanın içini doldurur.
FillPolygon Overloaded. Brush kullanarak çokgenin içini doldurur.
FillRectangle Overloaded. Brush kullanarak dikdörtgenin içini doldurur.
FillRectangles Overloaded. Brush kullanarak ard arda dikdörtgenlerin içini doldurur.
FillRegion Brush kullanarak belli bir bölgenin içini doldurur..
GetClip Kesilen bölgeyi alır.
Restore Graphics objesi ile yapılmış çalışmanın bir önceki kaydedilmiş haline gönderir.
Save Graphics objesi ile yapılanları kaydeder.
.BMP Desteği Özellikle .bmp özellikli dosyalar üzerinde işlem yapabilmek için zengin bir destek sağlanmış.
Dim b As Bitmap = New Bitmap(100, 100)
b.Save("c:\yeliz.bmp")
Gibi iki satırlık bir kodlama ile kaydedilebiliyor.
Visual Basic .NET içindeki Grafiksel Değişiklikler Visual Basic 6’da birçok grafik metotları ve özellikleri PictureBox kontolü ile kullanılıyordu. Visual Basic 6’daki grafik işlemleri Windows Graphics Device Interface (GDI) API’sini kullanıyor. Visual Basic 6’dan Visual Basic.NET’e upgrade yapıldığı zaman grafik metotları upgrade edilmemektedir.
Karşılaştırmalı Örnek Uygulama
Form’a daire çizdiren örneği VB6 ve VB.NET ile karşılaştıralım.

Visual Basic 6.0
Private Sub Form_Click()
Me.ScaleMode = 3
Me.Circle (50, 50), 50, vbRed
End Sub
Visual Basic .NET
Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Click
Dim pen As New Drawing.Pen(System.Drawing.Color.Red, 1)
Me.CreateGraphics.DrawEllipse(pen, 0, 0, 100, 100)
Pen.Dispose
End Sub
VB6’da Kullanılan Grafik Metotlarının VB.NET’deki Karşılıkları
VB6 VB.NET Karşılığı
AutoRedraw Özelliği Direk karşılığı yok. Ancak grafik metodunun Paint event ii ile yapabiliriz.
Circle Metodu Graphics.DrawEllipse Methodu
Cls Metodu Graphics.Clear Method
CurrentX Özelliği Birçok metotda kullanılabilir halde mevcut. Ör: DrawRectangle(pen, x, y, width, height)
CurrentY Özelliği Birçok metotda kullanılabilir halde mevcut. Ör: DrawRectangle(pen, x, y, width, height)
DrawMode Özelliği Pen.Color Özelliği.
DrawStyle Özelliği Pen.PenType Özelliği
DrawWidth Özelliği Pen.Width Özelliği
FillColor Özelliği SolidBrush.Color Özelliği
FillStyle Özelliği Pen.Brush Özelliği.
Image Özelliği VB6’da bu özellik elindeki değeri gönderirken, VB.NET’de System.Drawing.Image objesini geri gönderir.
Line Metodu Graphics.DrawLine Metodu
PaintPicture Metodu Graphics.DrawImage Metodu.
Point Metodu Direk karşılığı yok. .bmp’ler için Bitmap.GetPixel Metodu kullanılabilir.
Print Metodu Graphics.DrawString Metodu.(Verilen yazının istenen görüntü özelliklerine gore çizilmesini sağlar.)
TextHeight Özelliği Font.Height Özelliği.(Verilen metin ifadesinin boyunu ayarlar.)
TextWidth Özelliği Graphics.DrawString Metodu altında RectangleF özelliği ile kullanabiliriz.

Web Tasarımı | Site Tasarımı | Bilgisayar Dersleri | Hosting | Domain