14
Gelişmiş Nesneler II Ünite 7 1 GÖRSEL PROGRAMLAMA I Bilgisayar Programcılığı Önlisans Programı Öğr. Gör. Rıza ALTUNAY

GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

1

GÖRSEL PROGRAMLAMA IBilgisayar Programcılığı Önlisans Programı

Öğr. Gör. Rıza ALTUNAY

Page 2: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

2

Ünite 7

İçİndekİler7.1. TAB KONTROL ............................................................................................................................ 37.2. TIMER KONTROLÜ ..................................................................................................................... 57.3. PROGRESS BAR KONTROLÜ .................................................................................................... 7

7.3.1. ProgressBar Kontrolünün Önemli Özellikleri ............................................................................................. 8

7.4. PICTUREBOX KONTRÖLÜ ......................................................................................................... 97.4.1.  Image ....................................................................................................................................................................... 97.4.2. SizeMode ................................................................................................................................................................. 97.4.3. PictureBoxSizeMode.Normal ........................................................................................................................... 97.4.4. PicturcBoxSizeModc. AutoSize: .....................................................................................................................107.4.5. PictureBoxSîzeMode. Stretchlmage ............................................................................................................107.4.6. PictureBoxSizeMode. Centerlmage .............................................................................................................107.4.7. PictureBox içinde Resim Gösterme Yolları ...............................................................................................10

7.5. RESMI SILME ............................................................................................................................117.6. KAYNAKÇA ...............................................................................................................................12

GELİŞMİŞ NESNELER IIÖğr. Gör. Rıza ALTUNAY

Page 3: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

3

7.1. TAB KONTROL

Sekme şeklinde sayfalar içeren bir kontroldür ve her sekme sayfasının kendine ait özellikleri bulunmaktadır.

Özellikleri• Aligment : Nesne içersindeki sekmelerin hızalanmasında kullanılmaktadır.• Top : Tabcontrol nesnesinin üst kısmına hızalanmasını sağlar• Bottom : Tabcontrol nesnesinin alt kısmına hızalanmasını sağlar• Left : Tabcontrol nesnesinin sol kısmına hızalanmasını sağlar• Right : Tabcontrol nesnesinin sağ kısmına hızalanmasını sağlar • DrawMode : Nesne üzerinde çizim olaylarının gerçekleştirilebilmesi için kullanılır.

Drawmode özelliğinin değiştirilmesi gerekmektedir.• HotTrak : Fare sekme üzerine gelindiğinde sekmelerin değişmesini sağlamaktadır.• İmageList : Nesnenin sekme görüntülerinin saklandığı alan• ItemSize : Sekme boyutlarının belirlendiği kısımdır.• MultiLine : Nesnenin sekmelerinin birden fazla satırda gözükmesini sağlamaktadır.• TabCount : Sekme sayısını belirlemektedir.• SizeMode : Sekmelerin boyutlandırılmasında kullanılmaktadır.• Normal : Sekme boyutlarından faklı olarak kullanılmak üzere ayarlamanın yapıl-

dığı alan.• FillToRight : Sekmelerin kenar boşlukları bırakmadan yerleştirilebileceği alan.• Fixed : Sekme genişliklerinin eşit olarak belirlendiği alan.

Page 4: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Görsel Programlama Editörü Kurma Ve Tanıtma

4

TabControl nesnesine sekme eklemek için izlenecek adımlar.

1. Tab kontrol nesnesinin sağ üst köşesinde bulunan ok işaretine tıklanır ve oradan Add Tab seçeneği seçilir.

2. Diğer bir yöntem properties kısmından tabpeges ayarlrına girerek,

Page 5: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

5

3. Diğer bir yöntem ise kod kısmında ise kod kısmında

Tabcontrol1.TabPages.Add(“tabPage4”); şeklinde olabilir.

7.2. TIMER KONTROLÜ

Page 6: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Görsel Programlama Editörü Kurma Ve Tanıtma

6

İstediğimiz komutların belirlediğimiz zaman aralığında tekrarlamasını istiyorsak timer nes-nesini kullanabiliriz.

İnterval Özelliği : Timer’ın çalışacağı zaman bölümüdür. Zaman mili saniye cinsindedir. Mesela her 1 saniyede kodları çalıştırmak istersek interval 1000 ,her 2 saniyede kodları çalıştırmak için interval’i 2000 yapmamız gerekir.

Enabled Özelliği : Değeri true ise timer’ın çalışmasını,false ise durdurulmasını sağlar.Yani enabled değeri true ise timer’ın Tick olayına yazılan kodlar çalışır, false ise çalışmaz.

Tick Olayı : Bu olaya yazılan kodlar interval ile belirlenen zamanda tekrar edilir.

Start : Timer nesnesini başlatmak için kullanılır.

Stop : Timer nesnesini durudumak için kullanılır.

Örnek : Form üzerine eklenmiş butona tıkladığınızda sayfa içersinde bulunan listbox nesnesine UZEM SAMSUN MYO BİLGİSAYAR PROGRAMCILIĞI yazısını yazdıran program

private void Form1_Load(object sender, EventArgs e){timer1.Enabled = false;timer1.Interval = 1000;}private void basla_Click(object sender, EventArgs e){timer1.Enabled = true;}private void dur_Click(object sender, EventArgs e){timer1.Enabled = false;}private void timer1_Tick(object sender, EventArgs e){listBox1.Items.Add(“UZEM SAMSUN MYO BİLGİSAYAR PROGRAMCILIĞI “);}

Page 7: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

7

7.3. PROGRESS BAR KONTROLÜProgressBar kontrolü C#’da özellikle dosya kopyalama işlemleri sırasında gördüğünüz, bir işin ne kadarının tamamlandığını gösteren estetik görünümlü bir kontroldür. Görsel uygu-lamalarda çok fazla kullanım alanı bulunmasına rağmen programcılar tarafından işin görsel boyutu gözden kaçırıldığı için pek fazla kullanılmamaktadır.

Page 8: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Görsel Programlama Editörü Kurma Ve Tanıtma

8

7.3.1. ProgressBar Kontrolünün Önemli ÖzellikleriValue : ProgressBar’ın göstereceği değer -bar’ın ne kadarının dolu olduğu- bu özellikte saklanır. Varsayılan olarak bar boş olacağı için 0’dır.

Minimum ve Maximum: ProgressBar’ın hangi aralıklarda işlem göreceğini belirleyen özelliktir. Örneğin bir progra-mın ne kadarının yüklendiğini gösteren bir progressbar 0 ile 100 arasında bir değer alacak-tır.

Step : Bu özellik ProgresBar’ın kaçar kaçarlık dilimler halinde dolacağını belirleyen özelliktir.

Style : Bar’ın görsel olarak ne şekilde dolacağını belirleyebileceğiniz ayarlamadır. Block, Continuos veMarguee şeklinde üç farklı değer alır.

if (progressBar1.Value == progressBar1.Maximum) progressBar1.Value = 1; else progressBar1.Value = progressBar1.Value + 1;

Page 9: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

9

7.4. PICTUREBOX KONTRÖLÜ

Bu kontrol Bmp, Icon, Emf, Exif, Wmf, Jpeg, Png, Tiff ve Gif formatındaki resimleri görüntü-lemek için kullanılır. Ayrıca çizim metotları kullanarak pictureBox içine çizimler de yapılabil-mektedir.

7.4.1.  ImagePictureBox içindeki resim bu özellikle belirlenir. Tasarım anında resim yüklemek isterseniz Properties penceresinden bu özelliğin yanındaki … Düğmesi ile açılan pencereyi kullana-bilirsiniz.

7.4.2. SizeModePictutureBox içine yüklediğimiz resmin boyutları PictureBox’ın boyutlarından farklı ise nasıl davranılması gerektiğini bu özellikle belirleyebilirsiniz.

7.4.3. PictureBoxSizeMode.NormalHerhangi bir işelm yapılmaz. Resmin boyutlarıda ve PictureBox’ın boyutlarında bir değişik-lik olmaz.

Page 10: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Görsel Programlama Editörü Kurma Ve Tanıtma

10

7.4.4. PicturcBoxSizeModc. AutoSize:PictureBox’un boyutları resmin boyutlarına göre yeniden ayarlan, Resim büyükse PictureBox’un boyutları büyültülür, resim küçüksePictureBox’ın boyutları küçültülür. Böy-lece PictureBox resmin tamamını orijinal boyutunda görüntülemeyi garanti eder.

7.4.5. PictureBoxSîzeMode. StretchlmageResmin boyutları PictureBox un boyutlarına göre yeniden ayarlanır resim büyükse PictureBox’un boyutlarına küçültülür, resim küçükse PictureBox’un boyutlarına büyültülür. Böylece PictureBox resmin tamamını kendi boyutlarında görüntülemeyi garanti eder.

7.4.6. PictureBoxSizeMode. CenterlmageResim PictureBox içinde ortalanır. Eğer resmi PictureBox içine döşemek isterseniz Image özelliği yerine BackGroundlmage özelliğini kullanabilirsiniz.

7.4.7. PictureBox içinde Resim Gösterme YollarıTasarım anında Image özelliği ile açılan pencereden göstereceğiniz resmi ko¬layca belirle-yebilirsiniz ama çoğu zaman resmi tasarım zamanında degıl çalışma zamanında göstermek istersiniz PictureBox içine çalışma anında resim yüklemenin bir çok yolu vardır:

Dosyadan YüklemePictureBox içine dosyada bulunan bir resmi yüklemek için Image.FromFile metodunu kul-lanabilirsiniz.

Örneğin : c:\\ klasöründe bulunan resim.bmp dosyasını yüklemepictureBox1.Image = Image.FromFile (“c:\\resim.bmp” ); Başka bir kontroldeki resmi almaFormunuzdaki başka bir kontroldeki resmi PictureBox içine almak isteyebilirsiniz.

Örneğin : pictureBox2 İçindeki resmi pictureBox1 içine almak için:pictureBox1.Image=pictureBox2.Image; ImageList içindeki bir resmi almaFormunuzdaki ImageList kontrolünde bulunan resimlerden birini PictureBox içine almak isteyebilirsiniz.

Örneğin : ImageList içindeki 2 numaralı resmi pıctureBox1 içine almak için:pictureBox1.Image=ImageList1.Images[1]; OpenFileDialog kontrolü ile seçilen dosyadan almaFormunuzda bir OpenFileDialog kontrolü varsa kullanıcının buradan seçeceği bir dosyayı PictureBox içinde göstermek isteyebilirsiniz.

Page 11: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

11

openFileDialog1.Filter=”Resim Dosyaları “+”*.bmp;*.jpg;*.gif;*.wmf;*.tif;*.png; if (openFileDialog1.ShowDialog()==DialogResult.OK) pictureBox1.Image=Image.FromFile(openDialog1.FileName);

7.5. RESMI SILMEPictureBox içindeki resmi silmek için Image özelliğine null atayabilirsiniz. pictureBox1.Image=null;

private void ac_Click(object sender, EventArgs e) { openFileDialog1.FileName = “resim”; openFileDialog1.Filter = “jpeg dosyaları (*.jpeg)|*.jpg|bmp dosyaları (*.bmp)|*.bmp|gif dosyaları(*.gif )|*.gif ”; openFileDialog1.Title = “Lütfen Bir Resim Dosyası Seçin”; openFileDialog1.InitialDirectory = “C:\\”; openFileDialog1.ShowDialog(); pictureBox1.Image = new Bitmap(openFileDialog1.OpenFile()); textBox1.Text = openFileDialog1.FileName; }

Page 12: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Görsel Programlama Editörü Kurma Ve Tanıtma

12

7.6. KAYNAKÇA

• AKTAŞ, V. (2014). Her Yönüyle C# 6.0.Kodlab. İstanbul: Yenibosna.• ALGAN, S. (2013). Her Yönüyle C#. Pusula. İstanbul: Beşiktaş.

Page 13: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Gelişmiş Nesneler II Ünite 7

13

Page 14: GÖRSEL PROGRAMLAMA I - portal.uzem.omu.edu.trportal.uzem.omu.edu.tr/dersler/2015-2016/BP3/bp008/bp008_unite7/bp008... · ProgressBar kontrolü C#’da özellikle dosya kopyalama

Görsel Programlama Editörü Kurma Ve Tanıtma

14