Merhaba arkadaşlar;
Bu makalemizde c# programlama dilini kullanarak tuş kontrollerinden bahsedeceğiz. Aslında çok elzem bir bilgi olarak görünmeyebilir fakat bazı durumlarda gerçekten hayat kurtarıcı olabilmekte. Öncelikle projemize "user32.dll" dosyasını import ederek başlayacağız. Global alan olarak tanımladığımız yerde,
Bu makalemizde c# programlama dilini kullanarak tuş kontrollerinden bahsedeceğiz. Aslında çok elzem bir bilgi olarak görünmeyebilir fakat bazı durumlarda gerçekten hayat kurtarıcı olabilmekte. Öncelikle projemize "user32.dll" dosyasını import ederek başlayacağız. Global alan olarak tanımladığımız yerde,
[DllImport("user32.dll")]
extern static int GetKeyState(int key);
extern static int GetKeyState(int key);
kodlarıyla fonksiyonu modüle deklare etme işlemini tamamlayarak dll dosyamızı import ediyoruz.(Bu arada name space kısmına ekleme yapmak için DllImport yazdıktan sonra "Alt+Shift+F10" tuşlarına basarak name space kısmına daha kolay yolda ekleme yapabilirsiniz…)
Örnek olarak klavyemizin CapsLock ve Numlock tuşlarının devrede olup olmadığını kontrol edelim. Bunun için;
private void timer1_Tick(object sender, EventArgs e)
{
if (GetKeyState((int)Keys.CapsLock) == 1)
{
lblcaps.BackColor = Color.Green;
}
else
{
lblcaps.BackColor = Color.Gray;
}
}
private void timer2_Tick(object sender, EventArgs e)
{
if (GetKeyState((int)Keys.NumLock)==1)
{
lblnum.BackColor = Color.Green;
}
else
{
lblnum.BackColor = Color.Gray;
}
}
{
if (GetKeyState((int)Keys.CapsLock) == 1)
{
lblcaps.BackColor = Color.Green;
}
else
{
lblcaps.BackColor = Color.Gray;
}
}
private void timer2_Tick(object sender, EventArgs e)
{
if (GetKeyState((int)Keys.NumLock)==1)
{
lblnum.BackColor = Color.Green;
}
else
{
lblnum.BackColor = Color.Gray;
}
}
Dikkatinizi çektiği üzere kodları timer nesnelerinin tick olayları içine yazdık. Sebebi ise kontrolün devamlılığını sağlamaktır. Bu şekilde klavyemizde bulunan tuşların hemen hemen hepsiyle alakalı ayarlamalar yapabiliriz.
Hiç yorum yok:
Yorum Gönder