Form içinde picturebox gibi resim kontrolüne resim yüklemek istediğimizde karşımıza Select Resource penceresi gelir ve buradan local resource'u seçip resim yüklersek proje içerisindeki resim dosyaları proje ile birlikte yalnızca o bilgisayarda çalışır. Ya da o resim dosyalarını projeyi çalıştıracağımız bilgisayara yüklemeliyiz. İkinci yöntem ise size birazdan anlatacağım yöntem olan bir resource dosyası oluşturup resim, müzik veya videolarımızı onun içinde saklamaktır. Bu dosyalar .rsx uzantılı olarak proje içinde tutulurlar. Bunu bir örnek ile açıklayayım:
Gördüğünüz üzere yeni bir Windows Forms Aplication oluşturup Toolbox'tan form içine picturebox, numericupdown, button ve timer konrollerini ekledim. Dilersek bunların tüm özelliklerini bileşen üstüne tıklayıp sağ altta beliren Properties bölümünden değiştirebiliriz. Bu projede ben eklediğim resimlerden oluşan bir slayt gösterisi yapmayı amaçladım. Mesela ben timer'in interval özelliğini 1000 milisaniye(1 saniyey tekabül ediyor), numeric up down'un minimum özelliğini 1 maximum özelliğini 100 olarak değiştireceğim. Çünkü projem istediğim doğrultuda ilerlesin ve hata vermesin istiyorum. Bu konuda bizi ilgilendiren asıl işlemlere gelirsek;
Solution Explorer bölümünden proje ismimize sağ tılayıp Add seçeniğinden New Item sekmesine tıklıyoruz.
Burada Resource File dosyasını işaretleyip dilersek yeni bir isimde verebiliriz Add butonuna tıklıyoruz.
Projemizde Resource dosyamızın oluştuğunu Solution Explorer alanında görüyoruz. Şimdi Strings seçeneğinden Images seçeniğine tıklıyoruz.
Karşımıza böyle bir arayüz gelicek. Bu arayüzde bulunan bileşenlerle dilersek kendimiz bir resim oluşturabiliriz. Mesela ben yukarıdaki gibi bir resim oluşturdum. Önceden paint programını kullanmış olanlar bu arayüze yabancı kalmayacaklardır. Ben slayt gösterimde bu resmede yer vereceğim fakat var olan resimleri nasıl ekleyeceğiz? Onun için şimdi,
Dilersek yukarıda gösterdiğim gibi dosyaya sağ click yapıp Add ve Existing Item seçeneğini tıklayarak dilersekte .rsx uzantılı dosyamızı tıklayarak boş alana sürükleyip ekleyebiliriz. Gördüğünüz gibi ben resimleri ekledim. Sıra geldi kodumuzu yazmaya:
Kodu tekbir resme küçük bir farkla sığdıramadım iki resim koyduğum için uzun bir kod olduğu zannedilmesin. Şimdi ilk olarak amaçtan bahsedersek butona ilk basımla slayt gösterisi başlasın ve numericupdown kontrolünün değerine göre gösteri hızlansın ve yavaşlasın istiyoruz. Numericupdown değerlerini saniye değeri olarak düşünüyoruz. Numericupdown un her değer değişiminde saniye ayarını numericUpDown_ValueChanged eventi içine yazdım. Butona her tıklamada yazısının değişimi ve timer'ın aktif edilip edilmeyeceğini kontrollerle belirledim. timer_Tick eventi içinde de değişken olan i değerine göre resimler ekrana sırayla getiriliyor. Projenin çalışmasından da bir görüntü verirsek eğer:
Picturebox kontrolü içinde resmin boyutunun otomatik olarak ayarlanması için properties bölümünden Size Mode özelliğini StrectchImage yapmak gerekir.
Resource dosyaları konusunda anlatacaklarım bu kadar, herkese iyi günler dilerim.
Hiç yorum yok:
Yorum Gönder