/// /// Исходный код текстовой онлайн игры "Пример отслеживания нажатий клавиш с клавиатуры" скачан с сайта https://apero.ru/ /// Пройти онлайн или скачать последнюю версию этой игры можно по адресу: https://apero.ru/Текстовые-игры/Пример-отслеживания-нажатий-клавиш-с-клавиатуры /// Авторы: Агент007 /// Версия: от 2024-06-07 17:41:20 /// \(набор="стандартный") \запомнить(набор) \(АПЕРО.нажатие.локация="локация для отслеживания нажатий") \(АПЕРО.нажатие.набор=набор) \лока Пример отслеживания нажатия клавиш АПЕРО.нажатие.локация="\(АПЕРО.нажатие.локация)" Обязательный параметр. Если задано, нажатия отслеживаются. \ЕСЛИ(АПЕРО.нажатие.набор!="") АПЕРО.нажатие.набор="\(АПЕРО.нажатие.набор)" Принимает значения "стандартный", "расширенный", "полный" или свой набор кодов клавиш для отслеживания. \ЕСЛИ(АПЕРО.нажатие.скрыть!="") АПЕРО.нажатие.скрыть="\(АПЕРО.нажатие.скрыть)" Если задано, то надпись "Ожидание ввода с клавиатуры" не будет отображаться. Нажатия продоложат отслеживаться фоном(если включено). [hr] \(запомнить("стандартный"),Стандартный набор): Набор поумолчанию. Все буквы, цифры и знаки на основной клавиатуре, Enter, пробел, Backspace. Язык и Регистр не влияет на код передваемый клавиши(АПЕРО.нажатие.код), только на саму клавишу(АПЕРО.нажатие.клавиша). [hr] \(запомнить("расширенный"),Расширенный набор): стандартный набор + стрелки(вверх/вниз/вправо/влево), числовая клавиатура(обычно справо от стрелок), клавиши над стрелками(Delete,Insert,Home,End,PageUp,PageDown,PrintScreen,PauseBreak) В этом наборе также отслеживаются зажаты ли клавиши Ctrl, Alt, Shift или Meta(Win), но сами нажатия на эти клавиши не отслеживаются [hr] \(запомнить("полный"),Полный набор): Передаются любые нажатия на клавиатуру, отслеживаемые браузером. Использовать с осторожностью, так как на сочетания с этими клавишами зашиты стандартные обработки событий браузера, операционной системы. Кроме этого сочетания клавиш обрабыватся несколько раз. Например Shift+Q перехватит сначала нажатие клавиши Q, а затем, когда пользователь отожмет Shift, еще и клавишу Shift. [hr] \(запомнить("13,37-40"),Свой набор): Коды клавиш через запятую. Если несколько последовательных кодов, то также через дефис. Например "13,37-40" отслеживает только клавишу Enter(13) и четыре клавиши стрелок 37,38,39 и 40. [hr] \(таблица,Таблица кодов клавиш) \ЕСЛИ(АПЕРО.нажатие.скрыть=0) \(изменить("1"),Скрыть надпись) Нажатия продоложат отслеживаться фоном(если включено). \ИНАЧЕ \(изменить("0"),Отобразить надпись) \ЕСЛИ(АПЕРО.нажатие.локация!="") \(забыть,Выключить ввод) \СТОП \забыть \(АПЕРО.нажатие.локация="")//выключить захват клавиш \СТОП(лока) \изменить(скрытие) \(АПЕРО.нажатие.скрыть=скрытие)//скрыть надпись захвата клавиш \СТОП(лока) \локация для отслеживания нажатий АПЕРО.нажатие.код=\(АПЕРО.нажатие.код) АПЕРО.нажатие.клавиша=\(АПЕРО.нажатие.клавиша) \ЕСЛИ (АПЕРО.нажатие.набор="полный" ИЛИ АПЕРО.нажатие.набор="расширенный") ( АПЕРО.нажатие.ctrl=\(АПЕРО.нажатие.ctrl) АПЕРО.нажатие.alt=\(АПЕРО.нажатие.alt) АПЕРО.нажатие.shift=\(АПЕРО.нажатие.shift) АПЕРО.нажатие.meta=\(АПЕРО.нажатие.meta)//Win \) [hr] \СТОП(лока) \таблица \(АПЕРО.блок.тип="контейнер") [table] [tr] [th]Код клавиши[/th][th]Возможные клавиши[/th] [/tr] [/table] [table] [tr] [td #99ff99]Стандартный набор[/td] [/tr] [/table] [table] [tr][td]8[/td][td]Backspace[/td][/tr] [tr][td]13[/td][td]Enter[/td][/tr] [tr][td]48-57[/td][td]0123456789 [b]или[/b] )!"№;%:?*( [b]или[/b] )!@#$%^&*( [/td][/tr] [tr][td]65-90[/td][td]a-z [b]или[/b] A-Z [b]или[/b] фисвуапршолдьтщзйкыегмцчня [b]или[/b] ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ[/td][/tr] [tr][td]186[/td][td]; [b]или[/b] : [b]или[/b] ж [b]или[/b] Ж [/td][/tr] [tr][td]187[/td][td]= [b]или[/b] +[/td][/tr] [tr][td]188[/td][td], [b]или[/b] < [b]или[/b] б [b]или[/b] Б [/td][/tr] [tr][td]189[/td][td]- [b]или[/b] _[/td][/tr] [tr][td]190[/td][td]. [b]или[/b] > [b]или[/b] ю [b]или[/b] Ю [/td][/tr] [tr][td]191[/td][td]/ [b]или[/b] ? [b]или[/b] . [b]или[/b] , [/td][/tr] [tr][td]192[/td][td]` [b]или[/b] ё [b]или[/b] Ё [/td][/tr] [tr][td]219[/td][td][ [b]или[/b] { [b]или[/b] х [b]или[/b] Х[/td][/tr] [tr][td]220[/td][td]\ [b]или[/b] | [b]или[/b] /[/td][/tr] [tr][td]221[/td][td]] [b]или[/b] } [b]или[/b] ъ [b]или[/b] Ъ[/td][/tr] [tr][td]222[/td][td]' [b]или[/b] " [b]или[/b] э [b]или[/b] Э[/td][/tr] [tr][td]226[/td][td]\ [b]или[/b] | [b]или[/b] /[/td][/tr]// \ [/table] [table] [tr] [td #9999ff]Расширенный набор[/td] [/tr] [/table] [table] [tr][td]12[/td][td]Clear[/td][/tr] [tr][td]19[/td][td]PauseBreak[/td][/tr] [tr][td]27[/td][td]Escape[/td][/tr] [tr][td]33[/td][td]PageUp[/td][/tr] [tr][td]34[/td][td]PageDown[/td][/tr] [tr][td]35[/td][td]End[/td][/tr] [tr][td]36[/td][td]Home[/td][/tr] [tr][td]37[/td][td]ArrowLeft[/td][/tr] [tr][td]38[/td][td]ArrowUp[/td][/tr] [tr][td]39[/td][td]ArrowRight[/td][/tr] [tr][td]40[/td][td]ArrowDown[/td][/tr] [tr][td]44[/td][td]PrintScreen[/td][/tr] [tr][td]45[/td][td]Insert[/td][/tr] [tr][td]46[/td][td]Delete[/td][/tr] [tr][td][b]При включенном NumLock[/b][/td][td][/td][/tr] [tr][td]96-105[/td][td]0-9[/td][/tr] [tr][td]106[/td][td]*[/td][/tr] [tr][td]107[/td][td]+[/td][/tr] [tr][td]108[/td][td].[/td][/tr] [tr][td]109[/td][td]-[/td][/tr] [tr][td]110[/td][td],[/td][/tr] [tr][td]111[/td][td]/[/td][/tr] [/table] [table] [tr] [td #ff9999]Полный набор[/td] [/tr] [/table] [table] [tr][td]16[/td][td]Shift[/td][/tr] [tr][td]17[/td][td]Control[/td][/tr] [tr][td]18[/td][td]Alt[/td][/tr] [tr][td]91[/td][td]Meta[/td][/tr] [tr][td]9[/td][td]Tab[/td][/tr] [tr][td]20[/td][td]CapsLock[/td][/tr] [tr][td]144[/td][td]NumLock[/td][/tr] [tr][td]145[/td][td]ScrollLock[/td][/tr] [tr][td]93[/td][td]ContextMenu[/td][/tr] [tr][td]112-123[/td][td]F1-F12[/td][/tr] [tr][td]Все остальные[/td][td]Все остальные[/td][/tr] [/table] \(АПЕРО.блок.тип="") \(лока,Назад) \(АПЕРО.конец=1) \СТОП