powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как узнать какие кнопки нажаты в комбинации клавиш!!!
15 сообщений из 15, страница 1 из 1
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813034
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос такой
Как узнать какие клавиши нажати в кмобинации клавиш?
Т.е. если человек нажимает Ctrl+E то мне надо понять что он нажал именно е и ctrl . Это для примера так необходимо понять все буквы и цифры!!!!
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813047
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хелп по команде InKey()
Для контролов на форме - хелп по событию KeyPress
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813053
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Inkey() не пойдет. В кодах комбинаций нет последовательности. например Ctrl+l=38
а Ctrl+m=50 хотя два соседних символа l и m!!!! Получается надо массив соответствий комбинаций и символов!!!!!
А как обойтись без этого? Ведт надо все буквы и цифры!!!!
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813062
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В чем состоит собственно задача? Зачем нужно определить эту комбинацию?

Дело в том, что способ решения зависит именно от того, где и с какой целью будет осуществляться этот разбор.

Кстати, какая версия FoxPro?
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813681
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задача стоит следующая:
необходимо осуществить поиск по столбцу в гриде одной букве если пользователь не удерживает контрол и по комбинации символов если пользователь уерживает контрол!!!!!
Т.е. если нажата Контрол и пользователь нажал букву "и" и букву "в" то необходимо искать строку "ИВ" а если нет то просто будет осуществляться поиск отдельно первый раз фамилии на букву "и" второй раз фамилии на букву "В"
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813743
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот в KeyPress NextBox-а и смотри. Чтото вроде:

PROCEDURE Text1.KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl

IF nShiftAltCtrl = 2
SEEK Chr(nKeyCode)
ELSE
SEEK This.Value
ENDIF
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813776
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сории. Имелось ввиду конечно
IF nShiftAltCtrl = 2
SEEK Chr(nKeyCode)
ELSE
SEEK This.Value+Chr(nKeyCode)
ENDIF
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813798
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблем бы не было если бы все было так просто!!!!!!
При нажатии комбинации контрол и символа в методе Keypress возвращается в переменную nKeyCode не код символа "S" а код комбинации Ctrl+=19 а 19, а код S-115. Получается абсурд!!!!! А 19-это не буква а комбинация !!!!! получается что надо выделить 'S'. Но как это сделать?
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813832
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Анализируй второй параметр KeyPress и добавляй недостающее значение к KeyCode
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813853
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Чтобы отталкиваться от того что вы предлагаете необходимо забивать массив соответствий!!!! так как нет однозначной зависимости между символом и его комбинацией с контролом!!!!!!!! Я уже про это писал
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813869
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем? Если второй параметр = 2, то KeyCode=KeyCode+96, для латинских символов.
Для кириллицы думаю то же самое.
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813882
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ага а для h=nKeyCode+23!!!
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32813894
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2egamov

Ну во-первых не +23, а -23. А во-вторых, это единичный случай который отлавливается дополнительной веткой анализа и все.
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32814408
po2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
po2
Гость
В общем случае любую комбинацию зажатых клавиш можно определить с помощью API-функции GetKeyboardState. Пример использования есть по ссылке: www.news2news.com/vfp/?group=37&function=476
...
Рейтинг: 0 / 0
Как узнать какие кнопки нажаты в комбинации клавиш!!!
    #32814425
egamov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!! То что надо!
я именно и имел в виду общий случай!!!!
Потому что такая же проблема может выскочит и с другими комбинациями клавиш!!!!
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как узнать какие кнопки нажаты в комбинации клавиш!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]