Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.28;
Скачать: CL | DM;

Вниз

Как узнать интервал между кликами дабл клика в винде?   Найти похожие ветки 

 
Olorin ©   (2002-08-19 14:13) [0]

О завернул то... в общем надо! :o)


 
Skier ©   (2002-08-19 14:25) [1]

>Olorin
SystemParametersInfo(...) + SPI_SETDOUBLECLICKTIME


 
Aleksey Pavlov   (2002-08-19 14:26) [2]

Ставьте глобальную ловушку "на мышь" и при возникновении события "двойной клик" запускать таймер, при повторном событии - останавливать таймер и скидывать результаты, к примеру, в файл.


 
Ученик ©   (2002-08-19 14:32) [3]

GetDoubleClickTime


 
Игорь Шевченко ©   (2002-08-19 14:33) [4]

GetDoubleClickTime - максимально допустимый интервал в миллисекундах между двумя кликами мыши, которые будут считаться за DoubleClick


 
Skier ©   (2002-08-19 14:44) [5]

>Olorin
Извини, не то :)
см. Ученик © (19.08.02 14:32) и Игорь Шевченко © (19.08.02 14:33)


 
Olorin ©   (2002-08-19 15:06) [6]

>Ученик ©
>Игорь Шевченко ©
>Skier ©
Спасибо ;o)
Вот еще бы с хоткеем разобраться бы.. :o/



 
Ученик ©   (2002-08-19 15:11) [7]

Вариант: проверка на GetForegroundWindow


 
Olorin ©   (2002-08-19 15:16) [8]

>Ученик ©
Хм нее.. есть способ похожий на пример перетаскивания окна за любой контрол... мне надо отловить 3 комбинации при активном окне... и не обращать внимания если окно не активно... я вижу такой вариант... обрабатывать клавиатурные комбинации к приложению... но вот как... не могу найти пример :o(


 
Ученик ©   (2002-08-19 15:18) [9]

Может Application.OnMessage


 
Olorin ©   (2002-08-19 15:22) [10]

>Ученик ©
Угу похоже я в ФАКе тут нашел что типа через него можно... а вот как догадайся сам :o(
Точно помню что кто-то раньше возможно даже не тут писал пример подобный... типа ловятся клавишные сообщения к форме (WM_KEY чего-то там вроде) и из них фильтруют информацию о нажатой комбинации клавишь... если я конечно не путаю... хотя Application.OnMessage реальнее помоему... но вот как??
Отловить то нужно 3 комбинации Ctrl+A, Ctrl+B, Ctrl+C ;o(


 
Ученик ©   (2002-08-19 15:36) [11]

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
var
ShiftState: TShiftState;
begin
if (Msg.Message = WM_KEYDOWN) then begin
ShiftState := KeyDataToShiftState(Msg.LParam);
if (ShiftState = [ssCtrl]) and (Char(Msg.WParam) in ["A", "B", "C"]) then
ShowMessage("Ctrl + " + Char(Msg.WParam))
end
end;

Не уверен, что Char(Msg.WParam) всегда работает правильно


 
Olorin ©   (2002-08-19 15:44) [12]

Ок спасибо я попробую и отпишу... можно ведь и по коду клавиши на худой конец распознавать :o)


 
Ученик ©   (2002-08-19 15:57) [13]

>Olorin © (19.08.02 15:44)
Если он есть :)


 
Olorin ©   (2002-08-20 06:41) [14]

>Ученик ©
Хм не сработало... вот как бы проверить... LParam и WParam по идее содержат виртуальный код клавиши?


 
Ученик ©   (2002-08-20 09:21) [15]

>Olorin © (20.08.02 06:41)
Что именно не сработало, в каких условиях ?



Страницы: 1 вся ветка

Текущий архив: 2002.10.28;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.017 c
1-92472
Serginio
2002-10-17 16:01
2002.10.28
dispinterface в 1С Ole Сервере


3-92369
Осирис
2002-10-04 12:07
2002.10.28
Как лучше сделать


3-92407
sdn31@mail.ru
2002-10-05 15:32
2002.10.28
Как защитится от универсальных паролей, типа: jIGGAe и др


4-92799
DeMoN-777
2002-09-16 10:14
2002.10.28
Програмное нажатие кнопки в чужом окне


3-92366
sie_vedenie
2002-10-04 19:36
2002.10.28
Работа на sql с dbase3