Ana içeriğe atla

C# öğrenmek 102: Form Application

C# öğrenmek 102: Form Application

C# öğrenirken en çok kullanacağımız yapı, Form App’dir. Bize sağladığı bileşenler (components) önemlidir.

Bu yazıya geldiyseniz eğer, zâten Form App açmayı biliyorsunuzdur. Ama zâten Visual Studio’yu indirdikten sonra, Windows Form App’i seçip, Next’e basıp oluşturun.

Form oluşturma örneği. (Görsel, I.)

Bir form örneği görelim:

Yeni oluşturulmuş örnek bir form görseli. (Görsel, II)

Şimdi en önemli menüleri göreceğiz:

  • Araçlar (Toolbox): Bileşenleri barındırır. UI Componentları (Görünüm Bileşenleri), formumuza sürekleyip koyarız. Ve Özellikler penceresinden değiştiririz. Kabaca en güzel anlatım budur. Haricî kütüphaneleri de buraya ekler ve erişirsiniz.
  • Özellikler (Properties): Bu pencere’de, form ayarlarını ve eklediğimiz bileşenlerin özelliklerini değiştirebiliyoruz.
  • Çözüm Gezgini (Solution Explorer): Proje dosyalarını buradan görürüz. Siler, taşır, oluşturur ve yeniden adlandırırız. Proje de kullanılan haricî kütüphaneleri de buradan yönetir ve entegre ederiz.

Ayrıca, bu Form’un kod bölümü var. Bir button’a üstüne sağ tık yapınca, “kod’a git”, “kodu görüntüle” yazar, ona basınız. Veyahût 2 kere tıklayıp, direkt o bileşenin kod bölümüne gider. 

Sınıf Yaratmak

Proje içerisinde, Class yaratılıyor. (Görsel, III.)

Form’a yazı yazdırmak

Form’a, button ve label ekliyoruz. Sonra button’a çift basıp ona atanan button1_Click fonksiyonuna kodumuzu yazıyoruz.

private void button1_Click(object sender, EventArgs e)
{
label1.Text = "Merhaba dünya!";
}

Basınca, label1 yazısı değişecektir.

Özellikler (properties) kutusu

  • Name: Nesnenin adı (örneğin, button1, label1).
  • Text: Nesne üzerinde görünen metin (örneğin, “Tıkla”).
  • BackColor: Arka plan rengi.
  • ForeColor: Metin rengi.
  • Font: Yazı tipi ve boyutu.
  • Enabled: Nesnenin etkin olup olmadığını belirler (true/false).
  • Visible: Nesnenin görünürlüğünü kontrol eder (true/false).
  • Location: Nesnenin form üzerindeki konumu (x, y koordinatları).
  • Size: Nesnenin genişlik ve yüksekliği (Width, Height).
  • Dock: Nesnenin form üzerindeki kenarlara sabitlenmesini sağlar.
  • Anchor: Nesnenin form yeniden boyutlandırıldığında nasıl davranacağını belirler.
  • TabIndex: Tab tuşu sırasını belirler.
  • TabStop: Tab tuşuyla seçilebilir olup olmadığını belirler.
  • Enabled: Etkinlik durumu.
  • Cursor: Fare imlecinin nasıl görüneceğini ayarlar (örneğin, el, ok).
  • Modifiers: Nesnenin erişim düzeyini belirler (örneğin, private, public).
  • GenerateMember: Kodda bu nesne için bir üye değişken oluşturulup oluşturulmayacağını belirler.
  • Click: Nesneye tıklandığında tetiklenen olay.
  • MouseEnter: Fare nesnenin üzerine geldiğinde tetiklenen olay.
  • KeyPress: Klavyeden bir tuşa basıldığında tetiklenen olay.
  • Load: Form yüklendiğinde tetiklenen olay.

Toolbox (Araçlar) kutusu

  • Button: Tıklanabilir bir buton.
  • Label: Metin göstermek için kullanılan bir kontrol.
  • TextBox: Kullanıcının metin girişi yapması için kullanılan alan.
  • CheckBox: İşaretlenebilir kutu.
  • RadioButton: Kullanıcının birden fazla seçenek arasından yalnızca birini seçmesini sağlar.
  • ComboBox: Açılır liste kontrolü.
  • ListBox: Liste öğelerini göstermek için kullanılır.
  • PictureBox: Resim göstermek için kullanılan kontrol.
  • ProgressBar: İşlemin ilerleme durumunu göstermek için kullanılan kontrol.
  • ToolTip: Bileşenler için bilgi balonları gösterir.
  • Panel: Bileşenleri bir alan içinde gruplar.
  • GroupBox: Bir grup bileşeni bir arada tutar ve başlık ekler.
  • TabControl: Sekmeli arayüz oluşturmak için kullanılır.
  • FlowLayoutPanel: Dinamik düzenlemeler için akış düzeni sağlar.
  • TableLayoutPanel: Hücresel bir düzen sağlar.
  • SplitContainer: İki bölmeye ayrılmış alan oluşturur.
  • MenuStrip: Menü çubuğu oluşturur.
  • ToolStrip: Araç çubuğu oluşturur.
  • ContextMenuStrip: Sağ tıklama menüsü oluşturur.
  • StatusStrip: Durum çubuğu ekler.
  • DataGridView: Tablo verilerini göstermek için kullanılan kontrol.
  • BindingSource: Veri bağlama kontrolü.
  • BindingNavigator: Veri gezintisi yapmak için araç çubuğu.
  • Chart: Grafik ve veri görselleştirme kontrolü.
  • Timer: Belirli zaman aralıklarında işlemleri çalıştırır.
  • BackgroundWorker: Arka plan işlemleri için kullanılır.
  • ImageList: Resimlerin listesini depolar.
  • ErrorProvider: Form doğrulama hatalarını göstermek için kullanılır.
  • ToolTip: Araç ipuçları sağlar.
  • PrintDocument: Yazdırılacak belgeyi temsil eder.
  • PrintDialog: Yazdırma iletişim kutusunu gösterir.
  • PageSetupDialog: Sayfa ayarlarını yapmak için iletişim kutusu.
  • PrintPreviewDialog: Yazdırma önizleme penceresi.
  • OpenFileDialog: Dosya açma iletişim kutusu.
  • SaveFileDialog: Dosya kaydetme iletişim kutusu.
  • FolderBrowserDialog: Klasör seçimi için iletişim kutusu.
  • FontDialog: Yazı tipi seçmek için iletişim kutusu.
  • ColorDialog: Renk seçmek için iletişim kutusu.
  • ElementHost: WPF bileşenlerini Windows Forms uygulamalarında barındırır.
  • WebBrowser: Web sayfalarını gömülü olarak göstermek için.
  • MediaPlayer: Multimedya oynatma bileşeni.
  • MaskedTextBox: Özel formatlı metin girişleri.

Bunlar en temeliydi.

Gelin sizle bir inputtan veri alıp, toplama uygulaması yapalım:

Bize lâzım olan şeyler: label1, textBox1, textBox2.

Kodumuzu yazalım:

double sayi1 = Convert.ToDouble(textBox1.Text);
double sayi2 = Convert.ToDouble(textBox2.Text);

double toplam = sayi1 + sayi2

label1.Text = "Sonuç: " + toplam;

Şimdi gelin, bir şeyin üstüne gelince uyarı veren bir kod yazalım:

Özellikler Penceresine gelelim, MouseEnter‘e basıp önümüze gelen kod ekranına şunu yazalım:

private void label2_MouseHover(object sender, EventArgs e) {
MessageBox.Show("Bu bir uyarı kutusudur!", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}

Öneriler

Kaynak alıştırması yapın, Youtube’den izleyin, bir konu belirleyin ve onun hakkında araştırma yapıp devam edin. Ama önce C# ile ilgili temel bilgileri edinip yapın.

Sonra projeleri inceleyin, eğer hazır kod alıyor iseniz o kodu okuyun anlamaya çalışın ve içeriğinde ufak değişiklikler yapın. 

Bu konu da Engin Demiroğ izlenecek bir yazılımcıdır. Videoların Youtube veyahût BTK Akademi’den bulabilirsiniz. 

Yorumlar

Bu blogdaki popüler yayınlar

Yıldırım Beyazıd ve Emir Timurlenk Savaşı

YILDIRIM BEYAZID VE EMİR TİMUR LENK SAVAŞI Ankara Savaşı (28 Temmuz 1402) Cengiz Han'ın vârisi olma iddiası ile çıkan Emir Timur. Beyazı'dın egemen olmasını kabul etmiyor. Onu küçümsüyor. Timur'un tahtını ele geçirmek için isyan başlatan   ve Timur Hindistan seferinden gelince bizzat kendisi tarafından kovulan Diyarbakır Beyi İlhan Ahmet Celâyir, Osmanlı'ya sığınmıştı. Epey Timur ve Beyazıd'ın arası gergindi. Fakat Timur kendi ırkından, dininden olan Osmanlı’ya saldırmak istemiyordu.   Timur’a tabî olan Mutahharten’ın ailesini Bursa’ya esir olarak gönderen Beyazid ile Timur’un arası açılmıştı.   “ Timur, kendisini sadece dünya üzerinde ulaşabileceği yere kadar hırsını doyurmak için Allah tarafından gönderilen “Allah’ın kulu” olarak değil, Türk halkının da gerçek ve tek temsilcisi olarak görüyordu. Yörüklerin bol paçalı şalvarları içinde, başında yüksek keçe başlığı ile tam bir Türk gibi giyinirdi.. Sarayı’nda sadece Türkçe konuşulur ve Türkçe yazı yazılır...

Türkiye, Filistin ve Araplar: Kıbrıs Sorunu

 Türkiye, Filistin ve Araplar: Kıbrıs Sorunu Bu konu, Filistin’in şuanki devlet başkanı olan Mahmut Abbas’ın, Rum Yönetimi’ni desteklemesiyle başlamıyor. Irak, 1957'de Yunanistan Devleti’yle görüşüp Kıbrıs’la ilgili ortak hareket kararı almışlardır. Aynı yılın Aralık ayı’nda gerçekleşen Birleşmiş Milletler toplantısında Kıbrıs Sorunu’nda Türkiye’ye karşı oy kullanırlar. Irak bununla da sınırlı kalmaz, Yunan desteğini almasıyla birlikte Türkiye’ye karşı Petrol borcunu da ödemez. (Musul Vilayeti’den gelen %10'luk Petrol geliri.) Ayrıca Türkiye’nin çoğu Projesine de karşı çıkar. Komünist Sovyetler Birliği yanlısı bir devlet kuran Suriye ve Mısır (Birleşik Arap Cumhuriyeti), Türkiye’ye karşı bir rakip hâline gelirken, Sovyetlerin Türkiye’yi kıstırma politikasına destek verirler. Türkiye bu durumda İsrail’le ilişkilerini sıkılaştırır fakat Türkiye bu durumda bile suçlu hâline gelir. Hiçbir konu da Türkiye’yi desteklemeyen ve Türkleri yok etmek için gâvuru-Yahudi’yi bile destekleyen...

Kürtler ve Medler

KÜRTLER VE MEDLER Kürt Tarihçilerin çoğu kendini Medlere dayandırır. Kürt dilinin gelişmesinde Medlerin rol oynadığını söylerler. (Minorsky - Kürtler, İslam Ansiklopedisi, VI. cilt, s. 1089-1114) Ve Medlerin torunlarıdır. (Amir Hassanpour - Kürdistanda Milliyetçilik ve Dil; s. 120.) » Kürtlerin tek kurduğu ulusal devlet olarak Medler İmparatorluğunu kabul ederler. (Wadie Jwaideh - Kürt Miliyetçiliğinin Tarihi , Kökenleri ve Gelişimi, s. 17.) » Ve bazı Kürt Tarihçilerde şöyle savunur: “bütün tarih boyunca Medleri Kürtlerden ayrı gösterecek bir hadise bulamazsınız.." (Zinnar Silopi - Doza Kurdistan; s. 9.) » Medler proto-Kürt’tür. (Philip Kreyenbroek & Christine Allison - Kürt Kimliği ve Kültürü, s. 25.) » “Dolaylı değil doğrudan Kürtlerin Medlerle bağlantıları vardır.” (Ali Hüseyin Kerim - Balkan Yarımadasında Kürtler, s. 49.) Medlerin İmparatorluğunu yıkan, Perslerdi. (William Aegleton - Mehabad Kürt Cumhuriyeti; s. 18.) Ve şunu söylemektedirler: Medler yıkıldık...