Вниз
Скачать: CL | DM;

Удержание кнопки мыши и кнопки...   Найти похожие ветки 

← →
MTsv DN   (2005-11-22 09:49) [0]

Привет...

Сразу прошу Модератора не перекидывать тему в WinAPI, т.к. там уже есть такая...

А вопрос такой... Мне нужно разделить работу, при нажатии на левую кнопку мыши...
В первом случае: обычный клик (WM_LBUTTONDOWN + WM_LBUTTONUP) -> Процедура 1...
Во втором случае: нажатие + удержание (WM_LBUTTONDOWN + ???????) -> Процедура 2...

Как это реализовать...

С Уважением MTsv DN


← →
Thaddy   (2005-11-22 11:32) [1]

The " ugly" easy way is to use an assignable typed constant as a flag and reset it after use. The better way is to write a helper object that catches the mouse and keyboard events and handles them. you need to catch both the mouse AND the keyboard events, so two distinctly different things. It is not difficult btw. Use OnMessage for example


← →
SPeller ©   (2005-11-22 12:45) [2]

Первое что приходит в голову - по сообщению BUTTONDOWN выставляешь флаг, например, fLButtonPressed := true; а на обработчике LBUTTONUP или ????? смотришь на этот флаг, если Да, то обрабатываешь, если Нет, то ничего не делаешь. А после обработки ставишь его в false. Понятно изложил мысль? )


← →
MTsv DN   (2005-11-22 12:54) [3]

Привет...

Это то понятно, но как быть с кликом... Т.е. неправильно выразился, как выделить удержание?..

В общем смысл такой: делаю свой скроллбар... У стандартного на кнопку вниз нажал - сработало (WM_VSCROLL, SB_LINEDOWN), а удерживаешь (WM_VSCROLL, SB_PAGEDOWN)

С Уважением MTsv DN


← →
-=Mike=-   (2005-11-22 16:12) [4]

а если таймер запустить в WM_LBUTTONDOWN и по его истечении если не было WM_LBUTTONUP начать крутить


← →
MTsv DN   (2005-11-22 19:02) [5]

> а если таймер запустить в WM_LBUTTONDOWN и по его истечении если не было WM_LBUTTONUP начать крутить
Да... Именно так и сделал...

С Уважением MTsv DN


← →
Vladimir Kladov   (2005-11-22 19:03) [6]

SetCapture, OnMouseUp->ReleaseCapture



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
15-1156191797
Piter
2006-08-22 00:23
2006.09.17
Методы работы антивирусных почтовых сканеров


6-1146266780
Naduev Aleksei
2006-04-29 03:26
2006.09.17
программа для учета переданной у полученной информации


15-1156590485
TUser
2006-08-26 15:08
2006.09.17
Не монтируются разделы на диске


1-1154589474
Mechanic
2006-08-03 11:17
2006.09.17
TGraphicControl не принимает MouseWheel


15-1156235492
buka
2006-08-22 12:31
2006.09.17
Ася, шрифты, ворд...




   Наверх