Üye Kayıt Üye Giriş

PictureBox Kullanımı - Veritabanına Resim Eklemek


PictureBox Kullanımı - Veritabanına Resim Eklemek

 

Image Özelliği :
image özelliğine atama yapılır.


ImageLocation Özelliği :
Dosya yolu belirtirken 2 tane \ kullanmalısınız.

pictureBox1.Image = Image.FromFile("C:\\a.jpg");

pictureBox1.Image = Image.FromFile(@"C:\a.jpg");

//digerinden farkı : internetten bir url de verebilirsiniz..

pictureBox1.ImageLocation = "C:\\a.jpg";

Ayrıca arayüz üzeriden de resim yolunu belirtebilirsiniz.Bunun için pictureboxa bir kez tıklayıp ve sağ üst ok işaretine tıklayıp ardından choose image ye tıklayıp resimlerinizi ekleyebilirsiniz ve resimlerinizi pictureboxda daha düzenli bir şekilde durdurmak istiyorsanız, bunun için pictureboxa bir kez tıklayıp ve sağ üst ok işaretine tıklayıp ardından size mode denilen yapıyı istediğiniz gibi değiştirebilirsiniz.


Neler Bu özellik?
normal: resim picture box üzerinde normal bir şekilde durur haliyle (picture box ın resimden küçük olmamasına dikkat ediniz)
stretchImage : resim ne kadar büyüklükte olursa olsun picture boxın boyutunu alıcaktır..
centerImage: resim picture box içerisinde ortalanır. (picture box ın resimden küçük olmamasına dikkat ediniz)
autosize: resminizin büyüklüğü ne olursa olsun pictureboxınız o büyüklüğe ulaşır..
zoom: resminiz picturebox içerisine odaklanır. (yakınlaştırılır).

 image özelliğini, farklı birçok uygulamada kullanabilirsiniz. Umarım verdiğim ders faydalı olmuştur. Sorularınız ve yorumlarınız için sayfadaki yorum ekle kısmını kullanabilirsiniz.

Veri Tabanına Resim Eklemek

     -  Bazen veritabanına resim eklememiz gerekir.. nerelerde karşılaşılabilir denilince gerek şirketteki personel resimleri gerek okuldaki öğrencilerin fotoraflarını tutabiliriz..

    -   Veritabanınız MsSql Server ise tablonuzun veri tipi "images" olması gerekiyor. Access veritabanını kullanıyor iseniz "ole nenesi" olması lazım.. bunları ayarladıktan sonra kodlarımı yazmaya başlayabilirz ..

 

public static void Kaydedermisin(string KisiAdi, string KisiSoyadi, string ResimYolu)

           {
 


SqlConnection con = new SqlConnection("Server=LocalHost; Database= Veritabanım; Integrated Security=True ");


 

   -  con adında bir SqlConnection nesnesi yaratıyoruz burada bir MsSql Server veritabanına bağlanıcağımızı ve buna göre bilgisayarımızdaki hangi veritabanına " connection String " bölümüne yazıyoruz.. "server=LocalHost "ile başlayan alan..

            


            SqlCommand com = new SqlCommand("Insert Into Table1 (Adi,Soyadi,Resmi) Values (@ad,@soyad,@resim)", con);


 

   - com adında bir SqlCommand Nesnesi yaratıyoruz burada MsSql Server veritabanında bir komut çalıştırıcağımızı, hangi tabloda hangi kolonlara ve hangi database ' e veri aktarıcağımızı söylediğimiz alandır..

  1. "Insert Into" Deyimi bir kayıt ekliyicem hazır ol demek..
  2. "Table1" Alanı ise hangi tabloya kayıt ekliyeceğimizi söylediğimiz yerdir..
  3. "(Adi,Soyadi,Resmi)" Alanı ise "Table1" tablosunun hangi alanlarına veri ekleyeceğimizi söylediğimiz yerdir..
  4. "Values (@ad,@soyad,@resim)" Alanı ise "(Adi,Soyadi,Resmi)" Alanlarına veri atayacagımız için formoliteden bu parametreleri veriyoruz bunu bir değişken gibi düşünebiliriz aşşağıda parametrelere değer atıyacağız ve bu degerleri bu sorgu gidip alan adlarıyla karşılaştırıp ekliyecek burda sıralamaya dikkat edelim arkadaslar..

            


            Com.Parameters.AddWithValue("@ad",KisiAdi);


 

  -  bildiğiniz gibi şuan bu kodları bir void metodun içine yazıyoruz metodun içindeki "KidiAdi" parametresine dışardan veri atadığından o veriyi orada yakalayıp @ad parametresine atıyoruz..

            


            com.Parameters.AddWithValue("@soyad",KisiSoyadi);


 

     -   yukardaki mantığın aynısı arkadaşlar..

     -  resmi parametresine deger atayabilmek için verilen resim yolundaki nesneyi byte[] dizisine cevirmek gerekiyor.. bunu için ;

            


            Image img = Image.FromFile(ResimYolu);


 

      -   resimimizi burada yakaladık..

       -  yukarıdaki img nesnesini bir byte[] dizisine aktarmamız gerekiyor..

            


            MemoryStream ms = new MemoryStream();

            img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);

            com.Parameters.AddWithValue("@resim",ms.ToArray());


 

       -   yukarda byte dizisine aktardıkdan sonra artık @resim parametresine atama yapabilirz..

            


            com.Connection.Open();


 

    -   yukarıda "com" diye yarattığımız "SqlCommand" nesnesinin "con" isimli yarattığımız "SqlConnection" nesnesindeki Connection Stringe yazılmış olan veritabanı ile bağlantıyı açtık..

           


            com.ExecuteNonQuery();
 


      -   yukarıda "com" diye yarattığımız "SqlCommand" nesnesinin içindeki Sorgu cümleciğini "Ms Sql Server" Veritabanında Çalıştırdık..

  


            con.Close();


       -  "con" isimli yarattığımız "SqlConnection" nesnesindeki Connection Stringe yazılmış olan veritabanı ile bağlantıyı Kapattık... ve veritabanına resim ekleme işlemi bitmiştir arkadaşlar..

                        }

    -   Yukarda yazmış olduğumuz veritabanına resim ekleme metodunu çağırmak için..

  


            Kaydedermisin("Hakkı","Eser","C:\\Resim1");


Umarım verdiğim ders faydalı olmuştur. Sorularınız ve yorumlarınız için sayfadaki yorum ekle kısmını kullanabilirsiniz.

 

 

Merhaba Mirza sanırım istediğin örnek aşağıdaki gibi olacak.

İlk Açıldığında ekranda iki adet resim görünüyor.

PictureBox Kullanımı - Veritabanına Resim Eklemek

 

Birinci resim tıklandığında ise aşağıdaki gibi resmi formun arkaplanına basıyoruz.

 

 

PictureBox Kullanımı - Veritabanına Resim Eklemek

Bilgisayar Dershanesi Ders Sahibi;
Bilgisayar Dershanesi

Yorumlar

Yorum Yapabilmek İçin Üye Girişi Yapmanız Gerekmektedir.

ETİKETLER