Would you like to react to this message? Create an account in a few clicks or log in to continue.

    C# Ta Temel Bir Form Oluşturmak

    Admin
    Admin
    Admin
    Admin


    Mesaj Sayısı : 77
    Kayıt tarihi : 25/06/10
    Yaş : 30
    Nerden : Amasya

    C# Ta Temel Bir Form Oluşturmak Empty C# Ta Temel Bir Form Oluşturmak

    Mesaj tarafından Admin Perş. Mart 21, 2013 8:59 am

    Bu yazımızda Windows programlamanın temel elemanlarından olan windows formlarının
    nasıl oluşturulduğunu ve nasıl kullanıldığını göreceğiz, windows formlarını
    açıklarken basit bir dört işlem yapan hesap makinası oluşturacağız.Windows formları
    derken neyi kastediyoruz? Textbox, label, button gibi önemli elemanların hepsi
    birer windows formudur. Bu windows formlarına ulaşmak için System.Windows.Forms isimalanını kullanıyoruz.
    Ve tabi ki programımızın aktif bir windows uygulaması olarak
    çalışması için de aşağıdaki isimalanlarını projemize ekliyoruz.

    using
    System.Drawing;
    using
    System.Collections;
    using
    System.ComponentModel;

    Programımızı yazmaya başlamadan önce programımızın kodlarını içerecek bir isim
    alanı oluşturalım. Ben buna CsHesapMakinasi adi verdim.(Makaleyi okurken kaynak
    kodu incelemenizi tavsiye ederim) Siz istediğiniz başka bir isim kullanabilirsiniz.


    Daha önceki
    makalelerimizde belirttiğimiz gibi programımızın çalışması için derleyiciye programın
    başlangıç noktasını bildirmemiz gerekirdi.Bu başlangıç noktası da
    genelde main() fonksiyonu oluyordu. Kodumuzu öyle ayarlayacağız ki main() fonksiyonu
    icra edildiğinde çalıştırmak istediğimiz windows formu ekranda görünsün.
    Bunun için main içine aşağıdaki kodu yazıyoruz.

    Application.Run(new
    Form1());
    // Yeni bir Form1 nesnesi oluşturularak uygulama olarak başlatılıyor.

    Şu an için Form1 hakkında en ufak bir bilgiye sahip değiliz.Peki bu Form1
    nasıl oluşturulacak. Yukarıda da bahsettiğimiz gibi Form1 sınıfından bir nesne oluşturmak
    için System.Windows.Forms
    isimalanını kullanmalıyız. Bu yüzden bu isim alanının altında bulunan Form sınıfından
    yeni bir Form1 sınıfı türetmemiz gerekecek, bu türetme işlemi aşağıdaki gibidir.
    Form1 sınıfını türettikten sonra Form1' içinde bulunacak elemanları tanımlıyoruz.4
    işlemi yapmak için 4 buton, işleme giren değerler için 2 textbox ve 2 tane de
    label formu tanımlıyoruz.Tanımlama işlemi aşağıdaki gibidir.

    public
    class Form1
    : System.Windows.Forms.Form
    {
    private
    System.Windows.Forms.Button
    button1;
    private
    System.Windows.Forms.Button
    button2;
    private
    System.Windows.Forms.Button
    button3;
    private
    System.Windows.Forms.Button
    button4;
    private
    System.Windows.Forms.Label
    label2;
    private
    System.Windows.Forms.TextBox
    deger1;
    private
    System.Windows.Forms.TextBox
    deger2;
    private
    System.Windows.Forms.TextBox
    sonuc;
    private
    System.Windows.Forms.Label
    isaret;
    }

    Şimdi
    bu windows formunun ekrana nasıl basıldığını inceleyelim.Main() işlevi içinde
    yeni bir Form1 nesnesi yaratıldığında Form1 nesnesine ait kurucu işlev olan
    Form1() işlevi çağrılır.(Kaynak kodu inceleyin). Form1() kurucu işlevinde ise
    InitializeComponent();
    adlı bir fonksiyon çağırılarak Form1 nesnesine ait olan üye elemanlarla (button,label,textbox
    vs) ilgili ilk işlemler yapılır.From1 açıldığı zaman Form1 içinde bulunan elemanlarla
    iligili yapmak istediğimiz ilk özellikleri InitializeComponent() fonksiyonu
    içinde yapıyoruz.

    private
    void InitializeComponent()
    {
    // form1
    içinde yer alacak elemanlar yaratılıyor(kaynak kodu inceleyin)


    this.deger2
    =
    new
    System.Windows.Forms.TextBox();
    this.sonuc
    =
    new
    System.Windows.Forms.TextBox();
    this.button2
    =
    new
    System.Windows.Forms.Button();
    this.isaret
    =
    new
    System.Windows.Forms.Label();
    this.label2
    =
    new
    System.Windows.Forms.Label();
    this.SuspendLayout();
    //

    //
    elemanlarla ilgili başlangıç özellikleri veriliyor.

    //

    this.deger1.Location
    =
    new
    System.Drawing.Point(16,
    Cool; //deger1
    adlı textbox için yer bildirimi

    this.deger1.Name
    =
    "deger1";
    this.deger1.TabIndex
    =
    0;
    this.deger1.Text
    =
    "0";

    this.name="Form1"; //Form1
    nesnesinin kendisi için this anahtar sözcüğünü kullanıyoruz
    this.text
    =
    "Hesap
    Makinası "
    ;
    this.BackColor
    =
    System.Drawing.Color.FromArgb(((System.Byte)(255)),
    ((System.Byte)(128)),
    ((System.Byte)(0)));
    this.ClientSize
    =
    new
    System.Drawing.Size(400,
    149);

    }
    Şimdi sıra elemanlarla ilgili olayların birbirleri ile ilişkisine.Mesela bir
    buton formunun click olayının form tarafından yakalanabilmesi için aşağıdaki
    satırları yazmalıyız.

    this.button4.Click
    +=
    new
    System.EventHandler(this.button4_Click);
    private
    void button4_Click(object
    sender,
    System.EventArgs
    e)
    {
    isaret.Text="/";
    sonuc.Text=System.Convert.ToString(System.Convert.ToInt32(deger1.Text)/
    System.Convert.ToInt32(deger2.Text));
    }

    buton4_Click() işlevinde, çalışma zamanında bir nesnenin özelliklerinin nasıl
    değiştirildiğini görüyoruz.button4 bölme işlemi yaptığından isaret.Text="/";
    yazdık. sonuc adlı textbox formunun Text özelliği bir string ifadesi olduğu
    için işlemlerimizi yaptıktan sonra sonuc.text ifadesine atama yapabilmek için
    System.Convert isimalanında bulunan ToString işlevini kullanarak ifadeyi String
    türüne dönüştürüyoruz. Aynı şekilde String olarak aldığımız türler için aritmetik
    işlem yapabilmek için yine aynı isimalanında bulunan ToInt32
    işlevi ile String türünü int32 formatına dönüştürüyoruz. Bütün bu işlemleri
    4 butonumuz için yaptığımızda dört işlem yapabilen basit ve bol bol bug içeren
    (unutmayın amacımız sadece formların kullanımını öğrenmek) bir hesap makinamız
    olacak.

      Forum Saati Çarş. Mayıs 08, 2024 12:26 am