Bir uygulama için girdi olarak kullanmak istediğim bir XBox360 denetleyicim var.
Çalışamayacağım şey, bunu bir arayüz aracılığıyla ortaya çıkarmanın en iyi uygulama yoludur.
Perde arkasında, denetleyiciyi / denetleyicileri işleyen sınıf yoklama düğmesi durumuna dayanır.
Başlangıçta bir şey denedim bağlantı:
Event ButtonPressed() as ButtonEnum
nerede ButtonEnum
oldu ButtonRed
, ButtonStart
vs ...
Bu sadece düğme basmalarını desteklemesi, tutma / desenleri (iki kez basma vb.)
Bir sonraki fikir, sadece düğme durumunu uygulamaya maruz bırakmaktı.
Property RedPressed as Boolean
Property StartPressed as Boolean
Property Thumb1XAxis as Double
Bu çok esnektir, ancak gerçekten uygulamaya çok fazla çalışma zorlar ve uygulamanın anket yapmasını gerektirir - mümkünse olayı tercih ederim.
Örneğin birden fazla etkinlik eklemeyi düşündüm
Event ButtonPressed(Button as ButtonEnum)
Event ButtonPressedTwice(Button as ButtonEnum)
Event ButtonHeldStart(Button as ButtonEnum)
Event ButtonHeldEnd(Button as ButtonEnum)
ama bu biraz hantal görünüyor ve "Bağla" ekranında gerçek bir acıydı.
Birisi beni kontrolörlerden gelen girdileri işlemenin "doğru" yoluna yönlendirebilir mi?
Not: Arabirimi uygulayan sınıfın içinde SlimDX kullanıyorum. Bu durumu çok kolay okumama izin veriyor. Sorunumu çözecek alternatifler de takdir ediliyor