C# ta Butonlarımıza klavye kısayolları ekleyebiliriz. Örneğin form üzerinde kaydetme işlemimizi gerçekleştiren BtnKaydet isimli bir butonumuz olsun ve bu butonun kısayoluda F5 tuşu olsun.
ilk olarak işe formumuzun basılan tuşları yakalayabilmesi için Properties kısmından Keypreview özelliğini true yapalım. daha sonra formumuzun keydown olayında aşağıdaki kodu yazalım.
if(e.KeyCode==Keys.F5)
{
BtnKaydet.PerformClick();
}
bu kod çalıştırıldığında ve F5 tuşuna basıldığın da BtnKaydet Butonumuz için yazdığımız kod çalşıtırılacaktır.
iyi çalışmalar.
kardeşim bilgin için çok teşekkürler gösterdigin işime yaradı yanlız aynı bu konu için sorum olacak
YanıtlaSil///bu işlev form üzerinde çalışıyor fakat sorum şu üzerinde degilken nasıl çalışır
///simgeDurumunaKucultmede çalışmıyor
///arka planda çalışmıyor
private void form1_Keydown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.H)
{
MessageBox.Show("H tuşuna basıldı");
}
}
/// bu işlevin formun alta olmasıyla yani minimenized simgeDurumunaKucultmede yada
/// arka planda kalması
/// ilede çalışmasını nasıl saglarım... her koşulda o tuşa bastıgımda işlev gerçekleşşin
konudan faydalanmanıza sevindim. soruduğunuz konu için şunu söyleyebilirim. keydown olayı bilgisayarınızda aktif pencere içerisin basılan tuşları yakalıyor. yani pencerede o tuşun karşılığı varsa devreye girer. siz ekranı minimize ettiğinizde artık aktif pencereniz örn. masaüstü olur. bu durum nasıl aşılır bir çözüm yolu var mıdır bu konuda bilgim yok. bir çözüme ulaştığınız da burda paylaşırsanız sevinirim. iyi çalışmalar
Silkodu nereye yazacağız ?
YanıtlaSilform seçiliyken event penceresine girerek oradan keydown eventını oluşturduktan sonra kodu içerisine yazabilirsiniz.
Silherkes vb de göstermiş cs gösteren kimse yok
YanıtlaSilteşekkürler
YanıtlaSilTeşekkürler.
YanıtlaSilabicim ben hesap makinesi yaptım ama - + tuşlarını ekleyemiyorum ismi nedir değerli hocam söyler misin?
YanıtlaSilif (e.KeyCode == Keys.Add) // toplama için
Silif (e.KeyCode == Keys.Subtract) çıkarma için
Ayrıca yine formun keydown eventı içerine aşağıdaki kodu yazarak klavyeden bastığın tuşun adını mesajda görebilirsin.
MessageBox.Show(e.KeyCode.ToString())