Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Да потому что действительно же - возврат в FPD какой-то. Вот его и торкнуло. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Ну вот хоть так например можно, накидал сходу:
Кликаем по второму текстбоксу или же уходим из первого клавой - смотрим в лейбле код возврата из первого. Для удобства конечно же стоит на основе такого просто визуальный класс текстбокса написать с возвращаемым каким-то его свойством, им и пользоваться, где надо. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Кстати, еще нужно снова обнулять это свойство при возврате фокуса в текстбокс:
Чтобы в следующий раз срабатывало с уходом мышкой. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Ydin Автор Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
У нас все пишут не на VFP или FPD, а на FrameWork'е RD. RD - Runtime Designer и он базируется на VFP 9.0 SP2. Все программирование происходит на запущенном Pamak.Exe (RD), кот. работает на все проекты. Вся бизнес-логика отдельно. 3-х слойка. В нем средства разработки и отладки. Под VFP работаю только я. У других, обычно, VFP не уставлен. На Девконах я показывал это все. Тут рассказывать нет смысла. Modi Form никто не пользуется. И никому это не мешает. Формы генерируются. Исправлено 1 раз(а). Последнее : Ydin, 27.05.20 12:13 |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Как все запущенно.
Ну дык, то, что я выше показал, можно без проблем точно так же и генерировать. В любом случае Lastkey() - сегодня уже моветон как бы. Уж при наличии в природе KeyPress() хотя бы. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
lulgu Сообщений: 1838 Дата регистрации: 30.11.2016 |
Да ладно ... От этого Lastkey() Таран с Симплой вон как возбудились (кстати, верный признак того что мужики обходятся без баб). KeyPress ТС категорически отверг, как неприемлемый второй вариант в пользу третьего варианта. Исправлено 1 раз(а). Последнее : lulgu, 27.05.20 14:58 |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Chemberzhy Сообщений: 13142 Откуда: Измаил Дата регистрации: 28.04.2009 |
Зря Вы так, дяденька, чистейший самиздат ------------------ Что-то с памятью моей стало, всё что было не со мной- помню. |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Chemberzhy Сообщений: 13142 Откуда: Измаил Дата регистрации: 28.04.2009 |
Да не ловит KeyPress() мышку, чё ты завелся то? ------------------ Что-то с памятью моей стало, всё что было не со мной- помню. |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Chemberzhy Сообщений: 13142 Откуда: Измаил Дата регистрации: 28.04.2009 |
В 2.6, насколько я помню, ему надо в SET-ах рассказать, что мышка может более одной кнопки иметь. ------------------ Что-то с памятью моей стало, всё что было не со мной- помню. |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
Мышку ловить и не надо - достаточно ловить все кнопки выхода, а в Lostfocus() проверять, нажимали ли такую кнопку. Если нет, то, как я писал выше - OTHERWISE = мышь. Идея Криспы нормальная и аналогична моей, надо только инициализировать свойство-код не в Init поля, а каждый раз при заходе в него. Но можно и проще: Добавляем на форму свойство-флаг, который сбрасывается в Gotfocus() и выставляется в Keypress() по нажатию одной из кнопок выхода. А дальше в Lostfocus() анализируем этот флаг. Исправлено 2 раз(а). Последнее : akvvohinc, 27.05.20 20:10 |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Chemberzhy Сообщений: 13142 Откуда: Измаил Дата регистрации: 28.04.2009 |
Так придется по всем объектам писать костыли, а я предложил на форме один раз написать
------------------ Что-то с памятью моей стало, всё что было не со мной- помню. |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Ydin Автор Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
Это на игре слов! У меня тут - на выполняемом Pamak.Exe. Исправлено 3 раз(а). Последнее : Ydin, 27.05.20 20:27 |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Ydin Автор Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
Вообще не въехал о чем это! Я про Lastkey() и KeyPress() не спрашивал вообще Исправлено 4 раз(а). Последнее : Ydin, 27.05.20 20:35 |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Ydin Автор Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
Когда по объектам мышкой - поймай на событии LastKey() для мышки...
И вообще, зачем мне отвечать, когда чувак не въехал и его несет мимо темы. Это я про Криспу. Более грубое я удалил. Но жаль... Исправлено 2 раз(а). Последнее : Ydin, 27.05.20 20:53 |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Simple777 Сообщений: 33855 Дата регистрации: 05.11.2006 |
Криспа теперь может запить... с горя...
|
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
of63 Сообщений: 25256 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Александр, а что за видеоэффекты необходимы, для отлавливания разницы схода с поля мышкой или клавишей ? Мышкой можно и из окна соскочить, а потом заскочить на него в другом поле окна... Или Alt-Tab сойти с окна, а зайти мышкой... В этом есть какая-то необходимость?
|
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Ydin Автор Сообщений: 7648 Откуда: Киев Дата регистрации: 16.12.2005 |
уже нет
|
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
akvvohinc Сообщений: 4224 Откуда: Москва Дата регистрации: 11.11.2008 |
"Костыли", а точнее - необходимый функционал, пишется не "по всем объектам", в 1 раз в классах этих объектов. В моем примере -это класс формы и класс текстбокса. |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Ты вообще сам код-то самотре??!! ;) Кто-то вообще говорил, что KeyPress должен ловить мышь?? Ты бы хоть просто поразмылял бы, прежде чем. Ну ладно, поясню для особо ленивых шевелить извлинами. ;) Если выйти из контрола можно только двумя способами: 1) путем клика мышой по другому контролу, 2) движениями через клаву. То: при потере фокуса - ловим через KeyPress нажатия клавы. Если поймали - как бы уже козе понятно. Если же не поймали, а фокус все равно потерян - что из этого следует? Правильно. Что потерян он путем клика. В смысле был произведен выход из него мышой. Ну и что тут нее так. Кстати, если бы не поленился и просто опробовал код (блин 2 минуты всего ленивых движений!), убедился бы, что оно таки работает, а не писал тут понимаешь всякое. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) |
Re: Как узнать, что последним была мышка или клавиатура? | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Можно в принципе и вариант, который akvvohinc предолжил.
Главное суть как бы. ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) Исправлено 1 раз(а). Последнее : Crispy, 28.05.20 07:33 |
© 2000-2024 Fox Club  |