Tuşa basma süresine bağlı olarak farklı tuş değerleri nasıl atanır


1

Örn: bir oyun için, LBM (sol fare tuşu) basılı tutulur, bilgisayarın tekrar tekrar tıkladığımı düşünmesini istiyorum; henüz sadece bir kez tıklattığımda normal bir fare tıklaması.

Açıkçası, özelleştirmek istediğim bir zaman aralığı olmalı.

Düzenleme: Bunu yapabilen bir program yapmak istemiyordum. Değişecek bir ayar ya da zaten var olan bir program arıyordum. Güzel yaklaşım tho.

Yanıtlar:


1

Evet. Değiştirilecek bir ayar olmayacak. Var olan programlar var. Dışarıda bazı WOW fareleri var ve onlar için yapılmış oldukça kapsamlı makrolar var. Ve elbette bir makro kurucusuna sahip olan Logitech G9'a sahipsiniz. İkili tabanca ateşleme oranını maksimize eden Left 4 Dead oynadığımda bir makroya sahiptim. İstediğin gibi.

Başka bir alternatif Autokey'i kontrol etmektir.

Her ne şekilde gidersen git, etrafta dolaşmak biraz sürecek.


1

İşte kavramsal bir cevap. Daha spesifik bir cevap almak için daha spesifik detaylar vermeniz gerekir.

Bu işlevi üretmek için, klavye girdisini nasıl alabileceğinize bir göz atmanız gerekir. Bu, programlama dilinizin ağır bir işlevi olacaktır.

Düşük seviyeli bir uygulamada, key-down ve key-up (veya mouse-up / down) izleyen zamanlayıcıları ayarlarım ve girdiyle çalışan zamanlayıcıları kullanırdım. Ardından, zamanlayıcının verileriyle birlikte basılan düğmeye dayanarak girişin ne olduğuna karar veren kontrol mantığına sahip olun.

Daha yüksek seviyeli bir uygulamada, işin çoğunu sizin için yapmak için bir giriş kitaplığınız olabilir. Veya, beyan ettiğiniz bazı zaman sınırları içinde gözlenen aynı giriş sinyalinin uzun bir serisi gibi şeyleri arayan girişi ayrıştırmak için işlevlere sahip olabilirsiniz.

Neyse, başlangıçta dediğim gibi. Özel bir cevap almak için lütfen en azından hangi programlama ortamını ele aldığınızı açıklayınız. Örneğin, bu bir Open-GL bağlam çerçevesi için mi?

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.