Yazılım

C# Klavyeden Basılan Tuşa İşlem Atama

Merhaba arkadaşlar, bu makalemizde klavyeden bastığınız bir tuşa işlem atama konusuna değineceğiz. Daha önceki makalemizde C# Klavyeden Basılan Tuş’u Bulma konusuna değinmiştik. Tuşa işlem atamada neler yapabiliriz diye soracak olursanız bazı örnekler vermek isterim. Mesela bir macro, flooder veya arka planda çalıştırabileceğiniz farklı bir işlem yaptırabilirsiniz. Yavaştan gerekli ön hazırlıklarımızı yapmaya başlayalım.

 

Tuşa İşlem Atama – Form Ayarı

Öncelikle projemize başlamadan önce Form’dan KeyPreview özelliğini True yapmamız gerekiyor. Bu ne işe yaracak olur derseniz uygulamanızı arka planda bile tuşu algılayıp atadığınız işlemi gerçekleştirecektir. Peki KeyPreview nasıl True değerine getireceğiz ?

Bunun için isterseniz projenizin Properties kısmından KeyPreview kısmını True yapabilir veya Form Load kısmına;

ekleyebilirsiniz. Bu 2 yöntemden birini yaptıktan sonra arka plan tuş kontrollerine erişmiş olacaksınız. Şimdi bize gerekli olan araçları projemize dahil edelim

 

Gerekli Araçlar

Bu projemizde bizlere eşlik edecek bazı yardımcı araçlar bulunmakta. Aşağıdaki araçları projemize dahil edelim.

  1. Timer

Sadece Timer kullanarak istediğimiz işlemi yaptırabiliriz. Şunu belirtmek isteriz ki Timer hızını tamamen kendinize göre ayarlamanızı tavsiye ederiz. Bizim tavsiyemizi soracak olursanız 250ms bastığınız tuşu yakalamada ideal olacağını düşünmekteyiz. Biz kendi Timer hızımı 250ms olarak ayarlayacağız. Timer’ımızı ekledikten sonra Properties kısmından aşağıdaki ayarları yapınız.

Enabled: True (İsterseniz Form Load kısmına timer1.Start(); yazarak da aktif edebilirsiniz)

Interval: 250

Yukarıdaki ayarları yaptıktan sonra bize GetAsyncKeyState fonksiyonu gerekiyor. Peki bu fonksiyon ne işe yarıyor ?

 

GetAsyncKeyState – Ne İşe Yarar ?

Bu fonksiyon bizim bastığımız tuşu algılamamızı sağlar. Atıyorum klavyeden F2 tuşuna bastınız, bu bastığınız tuşu algılayıp eklediğiniz işlemi yerine getirmesini sağlayabilir. Peki bu fonksiyonu nasıl projeme dahil edeceğim diye soracak olursanız aşağıdaki kodu projenize dahil etmeniz gerekir.

Hemen altına aşağıdaki kodu yapıştırın;

Artık fonksiyonumuzu projemize dahil etmiş bulunmaktayız. Dahil ettikten sonra DllImport hatası ile karşılacaksınız bu hatayı en üstteki using olan kütüphanelerin oraya,

ekleyerek bu hatayı da ortadan kaldırmış olacaksınız. Şimdi tuşlara nasıl işlem yaptıracağımıza yakından bakalım.

 

Timer’a Kodları Ekleyin

Eklemiş olduğumuz Timer’ımıza çift tıklayarak aşağıdaki kodlarımızı yapıştıralım. Bu işlemde F2 tuşuna bir işlem atamış bulunmaktayız. Şimdi eklemiş olduğumuz koda bakalım;

Yukarıdaki kodu Timer’ınıza ekledikten sonra test edebilirsiniz. F2 tuşuna bastığınızda size bir mesaj verecektir.

Şimdi önemli olan bir kaç hususa değinmek istiyorum. Burada önemli olan kısım fonksiyonumuzda ki (0x71) kısmıdır. Bu kısım atayacağınız tuşu belirler. Yani (0x71 = F2) tuşuna denk gelmektedir. Bu tuş işlemine Virtual-Key diyoruz. Bu kodlara ve nasıl başka tuşa işlem atayacağınızı görmek için Virtual-Key Codes bağlantısına tıklayarak gidebilirsiniz. Tıkladığınız bağlantıda tüm klavye tuşlarını görebilirsiniz.

 

Test Edin

Artık her şeyi tamamlamış bulunmaktayız. Artık projenizi çalıştırıp test edebilirsiniz. Biz sizler için projenin test sonucu aşağıya koyuyoruz.

Click to comment

CEVAP BIRAKIN

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Copyright © 2018 Web Sitesi üzerinde yayınlanan tüm içerikler www.ogzblg.com sitesine aittir. Toplist 25 Yandex.Metrica

To Top