| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > Выполнять действие пока нажата кнопка |
| Автор: nikkadim 22.8.2012, 17:34 |
| Подскажите плз, как можно отследить нажатую кноку чтобы выполнять действие в лупе до тех пор пока ее не "отожмут"? Нужно для реализации кнопочного джойстика. Спасибо. |
| Автор: Cheloveck 22.8.2012, 18:33 |
| http://msdn.microsoft.com/en-us/library/windows/desktop/ms646301%28v=vs.85%29.aspx |
| Автор: nikkadim 22.8.2012, 23:05 |
| это я так понял проверяет нажатие кноки на клавиатуре? а если речь о кнопке CButton в интерфейсе? |
| Автор: Earnest 23.8.2012, 08:49 |
| Так она может нажиматься и отжиматься программно - например если это checkboх type. И тоже есть запрос на проверку состояния - что-то типа BM_GETCHECK. А если ты имеешь в виду удержание в нажатом состоянии с помощью мыши (как стандартная кнопка: нажатие левой кнопки "нажимает" кнопку-контрол, отпускание - отпускает - то тоже самое, что с клавиатурой, точно также проверяется нажата ли кнопка мыши. Еще надо проверять позицию мыши, т.к. если курсор съехал с кнопки, то кнопка тоже отпускается. Обычно для инкапсуляции (в классе кнопки) при нажатии LBDOWN ставят Capture, чтобы отслеживать любые действия мыши, а при сходе с кнопки и LBUP capture снимают. Между этими двумя действиями кнопка нажата. |