मुझे एक XBox360 कंट्रोलर मिला है जिसे मैं एक एप्लिकेशन के लिए इनपुट के रूप में उपयोग करना चाहता हूं।
क्या मैं बाहर काम नहीं कर सकता एक इंटरफ़ेस के माध्यम से इसे उजागर करने का सबसे अच्छा अभ्यास तरीका है।
पर्दे के पीछे, नियंत्रक (एस) को संभालने वाला वर्ग पोलिंग बटन की स्थिति पर निर्भर करता है।
मैंने शुरू में कुछ लिंक की कोशिश की:
Event ButtonPressed() as ButtonEnum
कहाँ ButtonEnum
था ButtonRed
, ButtonStart
आदि ...
यह थोड़ा सीमित है कि यह केवल बटन प्रेस का समर्थन करता है, न कि होल्ड / पैटर्न (दो बार प्रेस, आदि)
अगला विचार यह था कि बटन स्टेट को ऐप जैसे ही एक्सपेक्ट किया जाए
Property RedPressed as Boolean
Property StartPressed as Boolean
Property Thumb1XAxis as Double
यह बहुत लचीला है, लेकिन वास्तव में यह ऐप में बहुत अधिक काम करता है और ऐप को पोल करने की आवश्यकता होती है - यदि संभव हो तो मैं ईवेंट संचालित करना पसंद करूंगा।
मैंने कई घटनाओं को जोड़ना माना जैसे:
Event ButtonPressed(Button as ButtonEnum)
Event ButtonPressedTwice(Button as ButtonEnum)
Event ButtonHeldStart(Button as ButtonEnum)
Event ButtonHeldEnd(Button as ButtonEnum)
लेकिन यह थोड़ा भद्दा लगता है और "बिंद बटन" स्क्रीन पर एक वास्तविक दर्द था।
क्या कोई कृपया मुझे नियंत्रकों से इनपुट को संभालने के लिए "सही" तरीके से इंगित कर सकता है।
NB: मैं जो इंटरफ़ेस लागू करता है वर्ग के अंदर SlimDX का उपयोग कर रहा हूं। यह मुझे बहुत आसानी से राज्य पढ़ने की अनुमति देता है। कोई भी विकल्प जो मेरी समस्या का समाधान करेगा, उसकी भी सराहना की जाएगी