كيفية اعتراض خاص (بديل / السيطرة) اضغط على مفتاح؟
سؤال
وكيف يمكنني التقاط تركيبات المفاتيح مثل ALT + K أو CTRL + ALT + H في curses
الثعبان؟
المحلول
وهناك محطة تحويل مفتاح التحكم في تركيبة مع مفتاح إلكتروني إلى رمز ASCII العادي. وهذا يمكن أن يقرأ من getch () وظيفة مثل أي صحفي الرئيسيين الآخرين .
CTRL-A: getch() returns 1
CTRL-B: getch() returns 2
...
CTRL-Z: getch() returns 26
وأيضا، لوحة المفاتيح () يجب استدعاء وظيفة لتمكين مفاتيح أخرى ظيفة خاصة (مثل السهم الأيسر، F1، منزل، الخ).
وأنا لا أعتقد أن هناك وسيلة المحمولة لتلقي الفوقية مفاتيح (مثل ALT-H) من خلال محطة. بعض إرسال الهروب (0x1B)، يليه مفتاح تعديل فيما أقام آخرون بت عالي وفقط يرسل بايت واحد.
لا تنتمي إلى StackOverflow