-->

Sponsor Alanı

Slider

İlgi Çeken Videolar

Sağlık

Teknoloji

Sinema

Televizyon

Ne Nedir?

En5 Konular

Ads1

» » » İcon Yapmak - Çizmek | Visual Basic

ads
ads
vb

Bir çok programlarda simge olarak kullanılan ( icon ) uzantılı simge dosyası nasıl çizilir hep beraber  göreceğiz.


İcon Nedir?

Programların simgesi anlamına gelmektedir.  Programı açtığımızda sol üst kösede kendini belli eder. 

Gerekli araçlarımız:

2 adet Picturebox (1.si Çizim , 2.Kalem Rengi)
2 adet Button (1.si Temizle , 2.Kaydet)
1 adet HscrollBar (Kalemin(Çizimin) Boyutu)


Kodlama:


Public Class Form1
    Dim resim As New Bitmap(32, 32) '32 ye 32 ebatında resim oluşturunuz (Not : icon boyutları 32,32 dir)
    Dim ekran As Graphics 'Burda ekran değişkenini çizim için kullanacağız
    Dim x1, y1, x2, y2 As Integer 'Değişkenlerimizi Tanımladık Kullanmak İçin
    Dim kalem As New Pen(Brushes.Black) 'Yeni Kalem Oluşturduk Çizimde Kullanmak İçin ve Rengine Siyah Dedik

    Private Sub yenile() 'Yenile Adında Bir Fonksiyon oluşturdum Her İstediğimizde yenile() deyip Resm Göstermesi İçin
        'Bu Fonksyon Olmassa Resmi Göstermez
        ekran = Graphics.FromImage(resim) 'Ekranın Çizeceği Resmi Ayarladık
        PictureBox1.Image = resim 'PictureBox1'de Resmimizi Göster 
    End Sub 'Fonksyonu Bitir

    Private Sub sil() 'Resmi Silmek İçin Bir Fonksiyon Kullandık
        'Bu Fonksiyon İşimizi Kolaylaştırıyor Her Seferinde Kod Yazmaktansa 1 kere sil() yazıyoruz yeterli oluyor 
        yenile() 'Yenileme Fonksiyonumuzu Çağırıyoruz ve Yeniliyoruz
        ekran.Clear(Color.White) 'Resmi Siliyoruz
        yenile() 'Tekrar Yeniliyoruz
    End Sub 'Fonksiyonu Bitiriyoruz

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Program aktif olduğunda Alttaki Kodları Çalıştır
        sil() 'Sildiriyoruz
        HScrollBar1.Maximum = 30 'HscrollBar1 in Son Değeri 30 yapalım 30dan fazla büyük olmasın açısndan 
        HScrollBar1.Maximum = 1 'En Küçük Değerinide 1 yapıyoruz 
        PictureBox1.Width = 320 '10 Kat Büyütüp Çizeceğimiz İçin
        PictureBox1.Height = 320 '10 Kat 
        PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage 'Pictureboxa hizala
        PictureBox2.BackColor = Color.Black 'Renk Kutusunu Siyah Yap 

    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Sil Tuşu
        sil() 'Sil Buttonunun içine Yazıyoruz bunu ve Siliyor
    End Sub



    Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown 'Pictureboxa Tıklanınca
        If e.Button = MouseButtons.Left Then 'Eğer Sol Tıklama İse
            x1 = e.X / 10 'x1 Değerini Bölü 10 aldık sebebi 10 kat büyütmüş olduğumuz için 
            y1 = e.Y / 10 'aynen y1 de 
        End If
    End Sub

    Private Sub PictureBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseMove
        'Pictureboxun Üzerine Gelince
        If e.Button = MouseButtons.Left Then 'Eğer Sol Tıklanıyosa ve Sürükleniyosa
            yenile() 'Yenile
            x2 = e.X / 10 'x2 yi ve
            y2 = e.Y / 10 'y2 yi al
            ekran.DrawLine(kalem, x1, y1, x2, y2) 'Çizgi Çiz 1.yerden 2.yere
            x1 = e.X / 10 'tekrar x1 ve
            y1 = e.Y / 10 'x2 yi aldık
            yenile() ' 
        End If
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        'Kaydet Buttonu
        Dim kaydet As New SaveFileDialog '
        kaydet.Filter = "Simge Dosyası (*.ico)|*.ico" 'Sadece .ico Olarak Kaydetmesi İçin
        If kaydet.ShowDialog = DialogResult.OK Then 'Eğer Kaydete Tıkladıysa Yap İptal'e Tıkladıysa Yapma
            Dim icon As Icon = icon.FromHandle(resim.GetHicon) 
            Dim kay As New IO.FileStream(kaydet.FileName, IO.FileMode.OpenOrCreate) 'FileStream Tanımladık Ve Dosyayı Açtık
            icon.Save(kay) 
            kay.Close() 'Dosyayı Kapadık 
            'Not Burda Dosyayı Kapatmassanız Çalışmaz kay.close()
        End If
    End Sub

    Private Sub PictureBox3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox3.Click
        kalem.Color = Color.White
    End Sub

    Private Sub HScrollBar1_Scroll(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles HScrollBar1.Scroll
        'HscrollBar1 Seçildiğinde
        kalem.Width = HScrollBar1.Value 'Kalemin Kalınlığını Ayarla
    End Sub

    Private Sub PictureBox2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox2.Click
        'Eğer Renk Kutusuna Tıklanırsa (Picturebox2 yani)
        Dim renk As New ColorDialog 
        renk.Color = kalem.Color 'Seçili Rengi Değiştir
        If renk.ShowDialog = DialogResult.OK Then 
            kalem.Color = renk.Color 'Kalemin Rengini Ayarla
            PictureBox2.BackColor = renk.Color 
        End If
    End Sub
End Class

ads

FacebookTwitterPinterestTumblrYazdır
«
Next
Sonraki Kayıt
»
Previous
Önceki Kayıt

Hiç yorum yok:

Yorum Yazmak İçin Aşağıdaki Seçenekleri Kullanınız


Lütfen konuyla alakasız yorumlardan kaçının. Sadece link almak amaçlı ( spam ) yorumlar yazmayınız. ( anında silinir ). Argo, küfür, siyasi vb. içerik barındıran yorumlar yazmayınız.

Not: Yorum yapabilmek için (yorumlama biçiminden) Anonim ( isimsiz olarak ) veya Adı/URL'yi ( Adı ( gerekli ) / URL ( kısmını boş bırakınız ), fonksiyonlarından seçim yaparak yorumlarınızı yazabilirsiniz.

Ancak Google + profili ile yapılan yorumları onaylamıyorum bilginize. Yorum yaparken Adı/URL kısmından yaparsanız sadece isim yazmanız yeterli. Site adresi, URL eklerseniz yorumunuz onaylanmaz.