Muhammer İLKUÇAR, MAKÜ-2015 BURDUR Görsel Programlama (Visual Programming) 2.Hafta 2014-2015 Bahar Dönemi CLASS YAPISI 1
Muhammer İLKUÇAR, MAKÜ-2011 BURDUR Class - Obje Nesne (Nesne tabanlı programlama) İnsan ırkının ortak özelliklerini oluşturan insan sınıfı Name (adı) Özellikler (properties) Kilosu Boyu Ten Rengi Saç tipi Saç rengi Göz rengi Gömlek Tipi Gömlek rengi Metodlar(methods) Konuşma() Yürüme () Ağlama () Gülme () Zıplama () Events (Olaylar) 2
Muhammer İLKUÇAR, MAKÜ-2011 BURDUR Class Yapısı Örnek Araba sınıfı (Class) Name (adı) : araba Propertie s(özellik) Markası Hızı Vites Tekerlek Renk Methods (Fonksiyon) Hızlanma () Vites Değiştirme() Durma () Events( Olaylar) 3
Muhammer İLKUÇAR, MAKÜ-2011 BURDUR Form1 Class Properties (Özellik) Text KeyPreview Width Height WindowState StartPosition Name (adı) : Form1 Methods (Fonksiyon) Close() Focus() FindForm() Contains() Events (Olaylar) OnClick Load Clsoing Closed KeyDown KeyPress KeyUp namespace WindowsFormsApp1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); }... } } 4
Visual Studio Ekranı Yeni proje Oluşturmak için : File-New-Project (CTRL+Shit+N ) 5
Visual Studio Ekranı 6
Visual Studio Ekranı Formun kod ekranı. Form1 class ı Form class ından türetilmiştir 7
Visual Studio Ekranı 8
Visual Studio Ekranı 1- Toolbox 2- Components 3- Properties mönüsü 4-Mönü tutturucu 5-Mönü seçimi 6- seçili olan nesne ve soy ağacı 7-özellik -olay 8- özelik ve değeri 9
Visual Studio Ekranı 10
Visual Studio Ekranı 11
Visual Studio Ekranı Solution Explorer üzerinde projenin üzerine sağ klikleyip açılan mönüden Properties seçeneği ile çağrılır 12
Visual Studio Ekranı 13
Form Özellikleri FORM Nesnesi 14
Height Muhammer İLKUÇAR, MAKÜ-2013 BURDUR Top Form Özellikleri Formun Text özelliği Icon Kontrol Butonları Left Border Width 15
Form Özellikleri Formun (Class ın) değişken adı Açıldığında seçili olacak buton Form nesneler sığmaz ise kaydırma çubuğu gelmesin Otomatik olarak boyutlandırılmayacak Formun zemin rengi Formun zemininde olacak resim Resmin durumu ESC tuşuna basılınca otomatik kliklenecek buton Sağ klikleyince açılan mönü Kontrol butonlarının görünüp görünmemesi Font Font rengi 16
Form Özellikleri form1.formborderstyle = FormBorderStyle.FixedDialog; Form olaylarına öncelik verilmesi (true ise) Maximize butonu Minimize Butonu Transparanlık oranı Iconun görünüp görünmemesi Windows un görev çubuğunda görünmesi 17
Form Özellikleri Formun genişlik ve yüksekliği (with,height) Formun Başlığı Formun en üstte olması Bütün bunların hepsi KOD ile de yapılabilir. 18
Form Olayları 19
Örnek : Visual Studio Ekranı Nesne Özellik Açıklama Label1-label4 Text= Adı Soyadı Etiketler textbox1 Edit edilebilir Adı Soyadı textbox2 Edit edilebilir Aylık mesai saati textbox3 Edit edilebilir 1 saatlik ücret textbox4 ReadOnly=true Toplam değer button1 &Hesapla Hesaplama işlemi button2 Çı&kış ESC ve klikleyince çıkış 20
Visual Studio Ekranı Accept Button: Form açıldığında seçili gelecek buton Cancel Button : ESC tuşuna basılınca kliklenecek buton Formun; StartPositon -> ScreenCenter WindowState -> Normal (default değer) 21
Visual Studio Ekranı Nesne Olayı(Event) private void button1_click (object sender, EventArgs e) { double mesai_saati = Convert.ToDouble(textBox2.Text); double saat_ucreti = Convert.ToDouble(textBox3.Text); double toplam = mesai_saati * saat_ucreti; textbox4.text = toplam.tostring(); } private void InitializeComponent() //içine otomatik olarak aşağıdaki gibi eklenir {... this.button1.click += new System.EventHandler ( this.button1_click ); } 22
Yeni Form (calss) Ekleme 23
Yeni Form (calss) Ekleme namespace WindowsFormsApplication8 { public partial class Form2 : Form { public Form2() { InitializeComponent(); } } } Form1 deki Button3 e Klikleyince Form2 Çağırması için; private void button3_click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.show( ); // f2.showdialog(); diyalog olarak göster } 24
Formları Çağırma private void button1_click(object sender, EventArgs e) { Form2 f = new Form2(); splitcontainer1.panel2.controls.clear(); f.dock = DockStyle.Fill; f.toplevel = false; f.parent = splitcontainer1.panel2; f.show(); } 25
Soru ve Görüşleriniz? 26