Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
3 / 3 / 1
Регистрация: 14.08.2012
Сообщений: 78
1

WM_KEYDOWN, как избавиться от паузы при нажатии на клавишу и продолжительном ее удержании

21.05.2013, 15:27. Показов 1633. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
при определенном нажатии на клавишу, двигается static элемент. т.е. двигается с одним рывком в начале. можно ли избавиться от этого, используя таймер?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.05.2013, 15:27
Ответы с готовыми решениями:

Изменить цвет кнопки при нажатии и удержании этого цвета даже при обновлениях страницы
Здравствуйте, все никак не получается сделать несколько кнопок одного цвета, допустим зеленого, а...

Keylogger - увеличение счетчика при нажатии на одну клавишу и сброс при нажатии на другую
Можно ли в си создать Keylogger,если да то как?Мне нужно чтобы принажатии клавиши срабатывал...

Как сделать звук при нажатии на клавишу?
Как сделать звук при нажатии на клавишу?

Как пересчитать значения при нажатии на клавишу
Добрый вечер я студент, и у меня возникла такая вот задачка: Мне надо так чтоб при клике на...

3
51 / 50 / 14
Регистрация: 17.11.2012
Сообщений: 427
21.05.2013, 15:48 2
SetTimer есть функция.
Обрабатовать можно в функции WM_TIMER.
Понятное дело что Таймер нужно запустить 1 раз

C++
1
SetTimer(hwnd,id,time,func);
hwnd - окно твоё
id - Айди твоего таймера , любую цифру ставь
time - время в миллисекундах
func - Если поставишь NULL , то будет обрабатываться в WM_TIMER если хочешь отдельную функцию , то создай сам - TIMERPROC
http://msdn.microsoft.com/en-u... s.85).aspx
Я не много не понял что тебе надо , но вот таймер как используется.
0
3 / 3 / 1
Регистрация: 14.08.2012
Сообщений: 78
21.05.2013, 16:18  [ТС] 3
Проблема вот в чем: при обработке VK_UP, VK_DOWN... , static элемент двигается в соответствующее направление по окну. Все работает, но двигается неравномерно. При изменении направления, т.е. при обработке этих сообщений, сначала произойдет рывок в ту сторону которая была выбрана, а потом уже равномерное движение.

К примеру поле для ввода. Если будете удерживать клавишу букву, заметите, она сначала отобразится один раз, после паузы будет заполнение

Добавлено через 7 минут
Т.е. получается, что WM_KEYDOWN посылается не всегда, когда происходит удержание клавиши. Это сделано для того, чтобы не набрать лишнего. (?) Можете ли предложить альтернативу.
0
51 / 50 / 14
Регистрация: 17.11.2012
Сообщений: 427
21.05.2013, 22:34 4
WInAPIшная функция:
C++
1
2
3
4
if(GetAsyncKeyState(VK_DOWN))
{
//Если нажата кнопа стрелка низ то делать
}
1
21.05.2013, 22:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.05.2013, 22:34
Помогаю со студенческими работами здесь

Реализовать форму, в которой при нажатии на кнопку и её удержании меняется цвет PictureBox
Помогите пожалуйста, мне необходимо реализовать форму, в которой при нажатии на кнопку и её...

C++ как сделать что бы при нажатии на клавишу происходило
Например при нажатии стрелочки вверх или шифт выводился текст на экран

Как при нажатии на клавишу клавиатуры вызвать процедуру?
Помогите плз, я в Delphi только учусь, Как при нажатии на клавишу клавиатуры вызвать какую-либо...

Звук при нажатии на клавишу enter. Как изменить его?
Так не работает PlaySound(L"mv.wav", NULL, SND_ASYNC);

Как при нажатии на клавишу срабатывал код (ввод пароля)
Как сделать так чтоб срабатывал код когда нажимаю на определенную клавишу Скажем я ввел в...

Как избавиться от звука при нажатии клавиш
Как избавиться от звука при нажатии управляющей комбинации клавиш, когда в фокусе находится...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru