Tôi đã có bộ điều khiển XBox360 mà tôi muốn sử dụng làm đầu vào cho một ứng dụng.
Những gì tôi không thể làm việc là cách thực hành tốt nhất để thể hiện điều này thông qua một giao diện.
Đằng sau hậu trường, lớp xử lý (các) bộ điều khiển phụ thuộc vào trạng thái nút bỏ phiếu.
Ban đầu tôi đã thử một cái gì đó liên kết:
Event ButtonPressed() as ButtonEnum
nơi ButtonEnum
đã ButtonRed
, ButtonStart
, vv ...
Điều này hơi hạn chế ở chỗ nó chỉ hỗ trợ nhấn nút, không giữ / mẫu (nhấn hai lần, v.v.)
Ý tưởng tiếp theo là chỉ cần hiển thị trạng thái nút cho ứng dụng, vd
Property RedPressed as Boolean
Property StartPressed as Boolean
Property Thumb1XAxis as Double
Điều này rất linh hoạt nhưng thực sự nó buộc quá nhiều công việc vào ứng dụng và yêu cầu ứng dụng phải thăm dò ý kiến - Tôi muốn điều khiển sự kiện nếu có thể.
Tôi đã xem xét thêm nhiều sự kiện, ví dụ:
Event ButtonPressed(Button as ButtonEnum)
Event ButtonPressedTwice(Button as ButtonEnum)
Event ButtonHeldStart(Button as ButtonEnum)
Event ButtonHeldEnd(Button as ButtonEnum)
nhưng điều này có vẻ hơi lộn xộn và là một nỗi đau thực sự trên màn hình "Nút Bind".
Ai đó có thể vui lòng chỉ cho tôi cách "chính xác" để xử lý đầu vào từ bộ điều khiển.
Lưu ý: Tôi đang sử dụng SlimDX bên trong lớp thực hiện giao diện. Điều này cho phép tôi đọc trạng thái rất dễ dàng. Bất kỳ giải pháp thay thế nào sẽ giải quyết vấn đề của tôi cũng được đánh giá cao