|
Tekrar Merhaba
arkadaşlar . C# Derslerine Console Application bölümü ile bir giriş
yapıp biraz ilerlemiştik . Şimdi kaldığımız yerden birazdan görsel
çalışarak devam edelim.Peki Windows Application ile nasıl çalışacağız
dersek ilk olarak nasıl açacağız bu pencereyi ? Bu pencereyi Console
Application bölümünü açtığımız gibi New Project penceresini açarak
ulaşabiliriz . Açılan pencereden bu sefer Windows Application `ı
seçeceğiz. Daha sonra karşımıza aşağıdaki gibi bir pencere açılacak .

Artık bu pencere bizim çalışma alanımız olacak .
Kısaca bu pencereyi bir tanıyalım derslerde ilerledikçe daha iyi
tanıyacağınızdan eminim. Form1 olarak nitelendirilen bölüm programımızı
derlediğimizde karşımıza çıkacak olan penceredir . Tüm nesneler (
butonlar , labellar , textboxlar …) bu pencere üzerinde barınacak .
Solda bulunan Pointer , Label , Buton … ları üzerinde barındıran bölüm
Araç Çubuğumuz ( Toolbox) . Sağdaki bölüm ise Nesnelerimizin
özelliklerini değiştirebileceğimiz bir bölümdür ( Properties ) . Örneğin
Şu anda Form1 aktif olduğu için Form1 in özellikler penceresi açık
durumda . Şimdi isterseniz küçük bir örnekle hem Windows Application `nın
nasıl çalıştığını hemde nesneleri tanımaya başlayalım .
Öncelikle 1 adet textbox , 1 adet botun ve 2
adet label `ı araç çubuğu olarak nitelendirdiğimiz bölümden bildiğimiz
sürükleyip bırakma yöntemi ile Form1 üzerine bırakalım .
Textbox
: Programı
çalıştırdığımızda içerisine bir şeyler yazabileceğimiz bir nesnemizdir .
Yada otomatik olarak program tarafından da bir şeyler yazdırabiliriz .
Buton :
Tetikleyicidir . Butona tıkladığınızda programı işler yapması için onay
vermiş olursunuz .
Label :
İse üzerine ya program başlamadan önce bilgilendirme amaçlı olarak
yazıların yazıldığı yada programın çalışması esnasında bir şeyler
yazması için kullanabiliriz .
Örnek – 1 ) : İsim
Yazdırma
Yukarıda bahsettiğimiz nesneleri Form1 üzerine
ekledikten sonra nesneler üzerinde otomatik olarak gelen yazıları
silmeyle işe başlayalım ( button1 , label1 gibi ) . buton1 üzerine 1
kere tıklayalım daha sonra sağ taraftaki özellikler bölümünden Text
bölümünü bulalım yan tarafında button1 yazıyordur o yazıyı silip oraya
İsim Yazdırma yazalım ve enter tuşuna basarak onaylayalım . Eğer
properties ekranı pencerenizde görünmüyor ise nense üzerinde sağ tuş
tıklayarak açılan pencerenden properties ` i işaretleyerek de
ulaşabilirsiniz . Bu yöntemi takip ederek label ve textbox üzerindeki
yazıları da silelim. Ve formumuza şöyle bir görnüm verelim

Bu işlemlerde bittikten sonra buton1 üzerinde çift
tıklayarak aşağıdaki gibi bir pencereyi açalım
|
src="win1_files/image001.jpg" v:shapes="_x0000_s1025">
|
imlecin yanıp söndüğü bölüme aşağıdaki kod bloğunu
yazalım ve ilk programımız çalıştıralım.
|
int
secim=int.Parse(textBox1.Text);
switch(secim)
{
case
1: label1.Text="Tahir";
break;
case
2: label1.Text="Mehmet Salih";
break;
default
: label1.Text="1 yada 2 giriniz Demiştim !";
break ;
} |
Bu örnekte ne yapmaya çalıştık ? Bu örneğimizde bir
tektbox tan aldığımız bir değeri ince integer olan secim e aktardık .
daha sonra bunu switch ile gelen sayıya göre label da neler yazacağını
belirlemiş olduk . Tüm bu işlemler buton a basıldığı zaman gerçekleşiyor
çünkü tüm kod bloğunu button1_click yani buton a tıklandığı zaman
çalışması için görevlendirildi .
Örnek – 2 ) : 1 den 10 a
kadar olan sayıların kareleri
Bu örneğimiz için 1 tane buton 1 tanede label
eklemeniz yeterli olacaktır . Formu aşağıdaki gibi tasarlayalım

daha sonra buton a çift tıklayalım ve şu şekilde
bir kod bloğu yazalım
|
int
karebul(int i)
{
return i*i;
}
private
void button1_Click(object
sender, System.EventArgs e)
{
int a;
for (a=1;a<=10;a++)
{
label1.Text += a+ " sayısının karesi =" +
karebul(a)+ "\n";
}
}
|
gördüğünüz gibi button1_Click üzerine basit bir
fonksiyon yazdık . Ve buton a basıldığında bu fonksiyon çağrılıyor .
Örnek – 3 ) : Maximum
Bulma
Bu örneğimizde textboxlar dan alacağımız iki değeri
karşılaştırıp label ve textbox a en büyüğünü yazdıracağız. Bu form
tasarımında 3 adet textbox , 1 adet buton , 1 adet label ekleyerek
aşağıdaki tasarımı oluşturalım.

daha sonra buton a yükleyeceğimiz kod bloğu şu
şekilde
|
double
maxbul(double sayi1 ,
double sayi2)
{
return(Math.Max(sayi1,sayi2));
}
private
void button1_Click(object
sender, System.EventArgs e)
{
double deger1=double.Parse(textBox1.Text);
double deger2=double.Parse(textBox2.Text);
textBox3.Text=maxbul(deger1,deger2).ToString();
label1.Text=maxbul(deger1,deger2).ToString();
} |
Bu örnekte yapmış olduğumuz işlemde iki farklı
textbox tan aldığımız değerleri double olan deger1 ve deger2
değişkenlerine aktarıp maxbul fonksiyonuna gönderip sonucu da textbox3
ve label1 e yazdırmak oldu .
Örnek – 4 ) : Üye Girişi
Bu örneğimizde bir kullanıcı giriş penceresi örneği
vereceğiz . Önceden bir kullanıcı adı - şifresi belirleyeceğiz ve
programı derlediğimizde bu değerleri doğru yada yanlış girişimize göre
label a bir şeyler yazdıracağız . Bu tasarım için 3 adet label , 2
textbox , 1 buton eklememiz yeterli olacaktır .

Daha sonra buton a ekleyeceğimiz kod bloğu
aşağıdaki gibi olacaktır .
|
bool
login(string kadi,int
pass)
{
if(kadi=="tahir"
&& pass==1234)
{
return
true;
}
else
{
return
false;
}
}
private
void button1_Click(object
sender, System.EventArgs e)
{
string kadi=textBox1.Text;
int pass=int.Parse(textBox2.Text);
if(login(kadi,pass)==true)
{
label3.Text="Hoşgeldin Sahip";
}
else
{
label3.Text="Sen de Kimsin ?";
}
} |
Burada bahsetmek istediğim
bool fonksiyonu . Bu şekilde bir fonksiyon tanımladığımız da bize
doğru yada yanlış şeklinde değer döndürür. if içerisinde de kem
kullanıcı adı hem de şifreyi kontrol edilmesi var .
Örnek – 5 ) : Yıldız
Çizme
Bu örneğimizde bir fonksiyon tanımlayacağız ve
kullanıcıdan alacağımız değere göre örneğin 3 yazarsa kullanıcı 3 e 3
lük bir yıldızlardan oluşan kare çizeceğiz

her zaman ki gibi buton kod bloğumuz aşağıdaki gibi
olacak .
|
void
yildiz(int deger)
{
for(int
i=0;i<deger;i++)
{
for (int
j=0;j<deger;j++)
{
label1.Text+=" * ";
}
label1.Text+="\n";
}
}
private
void button1_Click(object
sender, System.EventArgs e)
{
label1.Text=" ";
int a=int.Parse(textBox1.Text);
yildiz(a);
} |
**Araç Çubuğumuzdan ( Toolbox ) birkaç nesne
daha tanıyalım
Main Menü :
Açılır menü oluşturmak için kullanılır ( Dosya , Düzen menüleri gibi ) .
Açılır menülere eklediğimiz metinlere görev atamak için üzerinde çift
tıklamamız yeterlidir .
Context Menü :
Form üzerinde yada form üzerinde bulunan nesneler üzerinde sağtuş ile
tıkladığımızda açılacak olan menüdür . Context menü oluşturduktan sonra
o nesnenin yada formun özellikler ( properties ) bölümünden Context menü
seçeneğini seçmeinz yeterlidir .
Picture Box :
İçerisine resim ekleyebileceğimiz bir seçenek. Özellikler (properties)
bölümünden Image sayesinde içerisine resim alabiliriz . Size Mode ile
resmin boyutunu ayarlayabiliriz .
Month Calendar :Formumuza
takvim eklemek için kullanılır . Özelliklerinden MaxSelectionCount `u 1
seçersek takvim üzerinde sadece tekli seçim olanağı sağlar ç Eğer
işaretlenen tarihi ekrana yazdırmak istiyorsanız örneğin label`a
label1.Text =
monthCalendar1.SelectionStart.ToShortDateString ( ) ;
Eğer ToShortDateString ( ) yerine
ToLongDateString ( ) yazsaydık 26 Kasım 2005 cumartesi gibi uzun tarih
şeklinde yazardı .
Timer :
Formumuzda saat ile ilgili işlemler yapabilmek için kullanırız .
label1.Text = DateTime.Now.ToLongTimeString
( ) ; ile ekranda dijital bir saat oluşturabiliriz.
Tool Tip :
Eklemiş olduğumuz butonun üzerine geldiğimizde kullanıcıyı yönlendirmek
için görünecek küçük mesaj kutuları göstermek için kullanılır . Butonun
özellikleri ( properties ) bölümünden Tool Tip bölümüne yazarız .
Tab Control :
Çeşitli pencereler oluşturmak için kullandığımız bir şeçenektir .
|