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

Вниз

MouseMove как в VCL   Найти похожие ветки 

 
Preddy ©   (2007-08-07 13:30) [0]

Как в KOL сделать обработку перемещений мыши(например у панели) так, чтоб при выходе за пределы данного контрола и при нажатых кнопках мыши перемещения все еще обрабатывались бы.
Т.е. пользователь ведет мышкой с нажатой ,например левой, кнопкой по контролу, выходит за его пределы, но контрол продолжает обрабатывать перемещение


 
Сергей М. ©   (2007-08-07 13:36) [1]


> контрол продолжает обрабатывать перемещение


И что ?

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

Я не в курсе что там в КОЛ творится, но, имхо, дурь полная, если оно так)


 
Kolan ©   (2007-08-07 13:51) [2]

> Т.е. пользователь ведет мышкой с нажатой ,например левой,
> кнопкой по контролу, выходит за его пределы, но контрол
> продолжает обрабатывать перемещение

Сделать контрол большим, а показывать часть?


> дурь полная, если оно так)

Имхо не дурь. В Фотошопе например выделять можно и за пределами окна для рисования&#133


 
oxffff ©   (2007-08-07 14:00) [3]

SetCapture?


 
Сергей М. ©   (2007-08-07 14:01) [4]


> Kolan ©   (07.08.07 13:51) [2]


> В Фотошопе


Причем здесь Фотошоп, если речь идет о VCL-концепции контролов ?


 
Kolan ©   (2007-08-07 14:12) [5]

> Причем здесь Фотошоп,

Бо в такой функциональности нет чего-то странного. Ктому же сабж про KOL.


 
homm ©   (2007-08-07 14:16) [6]

> [4] Сергей М. ©   (07.08.07 14:01)
> Причем здесь Фотошоп

> [2] Kolan ©   (07.08.07 13:51)
> В Фотошопе например


 
Preddy ©   (2007-08-07 14:43) [7]

Имеется в виду как ScrollBar. В нем можно скроллить и за пределами самого ScrollBar"а. Просто в VCL это есть а в KOL нет, а нужно.


 
Preddy ©   (2007-08-07 15:32) [8]

Все. Разобрался :-)
Там надо при нажатии кнопки вызвать WinAPI функцию SetCapture(Handle) с хэндлом контрола. Тогда все сообщения мыши в Windows будут посылаться только нашему контролу. А при отжетии мыши надо вызвать ReleaseCapture, чтоб все вернуть обратно. Получается как в VCL!


 
Galkov ©   (2007-08-07 18:26) [9]

А я думал - как в windows :))

btw: Capture еще и рекурсивная штука


 
Preddy ©   (2007-08-07 19:07) [10]

Я имею в виду onMouseMove получается как в VCL.



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

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

Наверх




Память: 0.49 MB
Время: 0.056 c
11-1172839152
kichrot
2007-03-02 15:39
2008.03.30
Не модальная форма без фокуса


2-1204201182
ply
2008-02-28 15:19
2008.03.30
Выполнить действие для всех объектов формы


2-1204201273
mrfreeman2007
2008-02-28 15:21
2008.03.30
Вывод компа из спячки


15-1203407574
Бугага
2008-02-19 10:52
2008.03.30
Firebird, шифрование


15-1203444046
MonsterHell
2008-02-19 21:00
2008.03.30
Переопределение днс