2010-11-01 17 views
5

Từ những gì tôi có thể nói, khái niệm "Shift", "Alt" và "Control" được mã hóa khá tốt từ chính bàn phím thông qua API hệ điều hành. Đôi khi tôi thấy các phím Windows được sử dụng như một công cụ sửa đổi, nhưng nó dường như không đăng ký như là một phím bổ trợ "thực", bất kỳ phím nào trên bàn phím.Điều gì sẽ làm để thêm các phím bổ trợ mới cho Windows?

Nhưng một người có thể thêm khóa bổ trợ mới không? Có lẽ trong một nỗ lực hoang dã và điên rồ để mang lại bàn phím không gian cadet? Ngoài một bàn phím được sửa đổi vật lý (hoặc có thể chỉ cần remapping một số phím không sử dụng), những gì khác sẽ mất: trình điều khiển mới? API mới gọi? một viết lại hoàn chỉnh của hệ điều hành?

Tôi đoán loại điều này sẽ dễ dàng hơn nhiều khi thực hiện trên hệ điều hành nguồn mở hơn là trên Windows, phải không?

Trả lời

3

Vâng, có lợi ích trong việc có tiêu chuẩn cho bàn phím và chuột. Nó làm cho mọi thứ "làm việc" mà không cần trình điều khiển đặc biệt hoặc các bản vá lỗi hệ điều hành. Nhưng điều đó ngụ ý rằng bàn phím và chuột phải được tiêu chuẩn hóa để có được chúng "chỉ hoạt động". Vì vậy, nếu bạn muốn thêm một phím bổ sung cho bàn phím - cho dù đó là phím bổ trợ hay không - bạn phải bằng cách nào đó làm cho nó hữu ích có nghĩa là các ứng dụng cần phải nhận thức được nó và chúng cần một cách để được thông báo về trạng thái của khóa này. May mắn thay, Windows và các hệ điều hành khác Mở nguồn hay không, cung cấp một cơ chế mở rộng và tiêu chuẩn cho điều này: drivers. Vì vậy, trong ngắn hạn, bạn cần cung cấp trình điều khiển để mở rộng chức năng tiêu chuẩn của bàn phím tiêu chuẩn giống như bạn cần trình điều khiển nếu bạn mua một trong những con chuột ưa thích đi kèm với 19 nút đặc biệt và 3 cuộn bánh xe thay vì tiêu chuẩn hai hoặc ba nút và một bánh xe cuộn.

Và cuối cùng, bạn sẽ cần các ứng dụng nhận thức được bàn phím đặc biệt của bạn. Những gì sử dụng nó sẽ có được điều này bàn phím modded sau khi tất cả nếu bạn ứng dụng đã không biết gì về siêu cường của nó? Điều duy nhất bạn có thể thực hiện với bàn phím đặc biệt của mình là tạo các phím nóng kết hợp công cụ sửa đổi đặc biệt của bạn ..

0

API Windows W32 được xác định Virtual-Key Codes. Nó là 8-bit, nó cung cấp 256 giá trị và có một số khoảng trống trong bảng.

WM_KEYDOWN message hoạt động trên các mã này.

Bàn phím hiện đại cho phép phát hiện tối đa 6 lần nhấn phím đồng thời nhưng có N-Key RolloverKey Ghosting sự cố mà bạn cần biết.

.Net API chỉ hiển thị Alt/Shift/Control làm công cụ sửa đổi.

Tóm lại - nhiều API lõi do Microsoft chuyển tiếp trên Alt/Shift/Control làm công cụ sửa đổi ngay cả khi bàn phím hiện đại cho phép gần 5 công cụ sửa đổi đồng thời ngoài nhấn phím.