При нажатии на клавишу CTRL (VK_CONTROL) выполняются функции записанные между begin и end чтобы действия прекратились, нужно повторное нажатие клавиши CTRL.
Дописать в Uses:
Uses
Windows;
в процедуре:
if GetKeyState(VK_CONTROL)=1 then
begin
…..
…..
…..
end;
Вопрос, возможно кто знает код если нужно выполнить действия при разовом нажатии клавиши?
Выполнение действий при нажатии на клавишу
-
- Сообщения: 27
- Зарегистрирован: Вт авг 08, 2006 1:06 pm
- Terranin
- Site Admin
- Сообщения: 846
- Зарегистрирован: Вс июл 23, 2006 12:01 pm
Re: Выполнение действий при нажатии на клавишу
Надо дождаться отжатия клавиши и ничего не делать до этого события.Smile писал(а):При нажатии на клавишу CTRL (VK_CONTROL) выполняются функции записанные между begin и end чтобы действия прекратились, нужно повторное нажатие клавиши CTRL.
Дописать в Uses:
Uses
Windows;
в процедуре:
if GetKeyState(VK_CONTROL)=1 then
begin
…..
…..
…..
end;
Вопрос, возможно кто знает код если нужно выполнить действия при разовом нажатии клавиши?
-
- Сообщения: 27
- Зарегистрирован: Вт авг 08, 2006 1:06 pm
Re: Выполнение действий при нажатии на клавишу
Т.е. вводить какую-то дополнительную переменную которая будет следить за тем чтобы действия между begin и end выполнились только один раз? Или есть какие другие методы?Terranin писал(а):Надо дождаться отжатия клавиши и ничего не делать до этого события.Smile писал(а):При нажатии на клавишу CTRL (VK_CONTROL) выполняются функции записанные между begin и end чтобы действия прекратились, нужно повторное нажатие клавиши CTRL.
Дописать в Uses:
Uses
Windows;
в процедуре:
if GetKeyState(VK_CONTROL)=1 then
begin
…..
…..
…..
end;
Вопрос, возможно кто знает код если нужно выполнить действия при разовом нажатии клавиши?
- Terranin
- Site Admin
- Сообщения: 846
- Зарегистрирован: Вс июл 23, 2006 12:01 pm
Re: Выполнение действий при нажатии на клавишу
При нажатии зафиксировать этот факт в переменной и ждать когда клавишу отпустят на каком-то заходе в процедуру и только тогда выполнить один раз действие. Переменную очистить.Smile писал(а):Т.е. вводить какую-то дополнительную переменную которая будет следить за тем чтобы действия между begin и end выполнились только один раз? Или есть какие другие методы?Terranin писал(а):Надо дождаться отжатия клавиши и ничего не делать до этого события.Smile писал(а):При нажатии на клавишу CTRL (VK_CONTROL) выполняются функции записанные между begin и end чтобы действия прекратились, нужно повторное нажатие клавиши CTRL.
Дописать в Uses:
Uses
Windows;
в процедуре:
if GetKeyState(VK_CONTROL)=1 then
begin
…..
…..
…..
end;
Вопрос, возможно кто знает код если нужно выполнить действия при разовом нажатии клавиши?