C# da EVENTS (OLAYLAR)

Bir kodun işletileceği zamanı kodun yazılmış olduğu Events belirler.Tüm kontrollerin farklı event’i bulunur. Kodun yazılacağı yer onun işletileceği zamanı belirleyeceği için çok önemlidir. Bu yüzden kodun yazılacağı yordam çok iyi belirlenmelidir.

_Click

Mouse o kontrol üzerindeyken sol tuşuna
basılmasıyla işletilen yordamdır.

private void button1_Click(object sender, EventArgs e)
{
//Kodlar
}

_DoubleClick

Mouse kontrolün üzerindeyken çift tıklanılmasıyla
işletilir.

private void textBox1_DoubleClick(object sender,EventArgs e)
{
//Kodlar
}

_TextChanged
Metin girilebilen kontrollere ait bir olaydır.
Textbox’ın içeriğinin değişmesi durumunda işletilir.

private void textBox1_TextChanged(object ender,EventArgs e)
{
//Kodlar
}

_MouseDown
Mouse o kontrolün üzerindeyken, mouse tuşlarından
herhangi bir tanesine basılmasıyla işleyen events’tır.

e.Button ile hangi tuşa basıldığı öğrenilip kontrol edilebilir.

Tuşların karşılıkları
MouseButtons.LeftSol
MouseButtons.RightSağ
MouseButtons.MiddleOrta
private void textBox1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Text = “solbastın”;
}
}

_MouseUp

Mouse o kontrolün üzerinde iken herhangi bir mouse
tuşunun bırakılmasıyla işler.MouseDown olayı ile aynı
özelliklere sahiptir.

private void textBox1_MouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Text=”sol bıraktın”;
}
}

_MouseMove
Mouse’un o kontrol üzerinde hareket
ettirilmesiyle işler.

private void Form1_MouseMove(object sender, MouseEventArgs e)
{
button1.Left = e.X + 30;
button1.Top = e.Y – 30;
}

_FormClosed
Form kapanırken işleyen olaydır. Genellikle değişiklikler kaydedilsin
mi uyarası ve kayıt için gerekli kodlar buraya yazılır.

private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
DialogResult mesaj;
mesaj = MessageBox.Show(“Değişiklikler Kaydedilsin mi?”, “Kapat”, MessageBoxButtons.YesNo);
if (mesaj ==DialogResult.Yes)
{
//Gerekli kodlar
MessageBox.Show(“kayıt tamam”);
}
}

_Enter
Kontrolün o nesneye geçmesiyle işleyen olaydır.
Tab tuşu ile o nesneye geçiş yapıldığında enter
olayı gerçekleşir.

private void textBox2_Enter (object sender, EventArgs e)
{
textBox2.Text = “kontrol text2 ye geçti”;
}

_Leave
Nesne kontrolü kaybettiği zaman leave olayı işler.

Kontrolün formun üzerinde hareket etmesiyle işleyen olaydır.

private void textBox1_Move(object sender, EventArgs e)
{
textBox1.Text = “text hareket halinde”;
}

private void button2_Click(object sender, EventArgs e)
{
textBox1.Top += 10;
}

private void textBox2_Leave(object sender, EventArgs e)
{
textBox2.Text = “kontrol text2 de değil”;
}

_Validating

Kontrol o nesneden ayrıldığı anda işleyen yordamdır. e.Cancel=true
aktarılırsa diğer kontrollere geçiş engellenir.

private void textBox3_Validating(object sender, CancelEventArgs e)
{
string ad;
ad = textBox3.Text;
if (ad == “”)
{
e.Cancel = true;
}
}

_Move
Kontrolün formun üzerinde hareket etmesiyle işleyen olaydır.

private void textBox1_Move(object sender, EventArgs e)
{
textBox1.Text = “text hareket halinde”;
}

private void button2_Click(object sender, EventArgs e)
{
textBox1.Top += 10;
}

_KeyDown

Klavyeden herhangi bir tuş basılması ve tuşun basılı kalması durumunda
devamlı olarak işleyen olaydır.

Parametreleri;
KeyCode: Basılan tuş değeri e.KeyCode parametresine aktarılarak
istenilen işlem yaptırılabilir.

private void textBox4_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.A)
{
MessageBox.Show(“A tuşuna bastınız”);
}
}

KeyValue:Basılan tuşun ascii değeri öğrenilebilir.

KeyData:Basılan tuşun karakter karşılığı öğrenilebilir. Basılan tuşu başka bir yere yazdırmak veya bir değişkene aktarmak için kullanılır.

Alt: Alt tuşu ile basılı iken başka bir tuşa basıldığı anda kod işletmek için kullanılır.

Control: Ctrl tuşuna basılı iken bir tuşa basılırsa kodun işlemesini sağlar.

Shift: Shift tuşuna basılı iken bir tuşa basılırsa kodun işlemesini sağlar.

private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.End)
{
Application.Exit();
}
}

_KeyUp

Tuş bırakıldığı anda bir kere işleyen olaydır. KeyDown olayının
tüm özellikleri bu olay içinde geçerlidir.

private void textBox4_KeyUp(object sender, KeyEventArgs e)
{
if (e.Control && e.Alt && e.KeyCode == Keys.Enter)
{
this.Text = “Az önce Ctrl+Alt+Enter tuşlarına bastınız”;
}
}

_KeyPress
Klavyeden bir tuşa basılmasıyla bir kere işleyen olaydır. İşleme
zamanı KeyDown’dan sonra KeyUp’tan öncedir. KeyChar
parametresi ile basılan tuşu ascii değerleriyle kıyaslayabiliriz.

private void textBox5_KeyPress(object sender, KeyPressEventArgs e)
{
if ( e.KeyChar>=(char)58 || e.KeyChar<=(char)47)
{
e.Handled=true;
}
}

tuna

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir