![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблемы с ЛКМ (нажал на объекте, отпустил вне)
Axl © (2016-01-02 20:20:00)Только начал - сразу в ступор. Проблема: На форме любой объект. Есть событие OnMouseUp. При нажатии на объект ЛКМ и отпускании ЛКМ вне объекта событие обрабатывается! Неужели так должно быть? Delphi XE3.
Например, я нажал на кнопку на форме, передумал и отвел мышь в сторону, а потом отпустил. Событие по идее не должно обрабатываться? или я не понимаю чего-то?
Лори (2016-01-03 13:48:00) [1]> Неужели так должно быть?
Да, так должно быть.
Но если не хотите так - можно отменить - сделайте ReleaseCapture() в MouseDown.
DVM (2016-01-03 12:09:00) [2]
> Axl (02.01.16 20:20)
После нажатия ЛКМ над окном, происходит захват мыши до отпускания кнопки. Даже если кнопка мыши будет отпущена над другим окном - сообщение придет всегда первому окну. Все сообщения мыши до отпускания идут только в первое окно.
sniknik (2016-01-02 21:19:00) [3]> вне объекта событие обрабатывается! Неужели так должно быть?
должно, и если нет/где этого нет, там порождает глюки - нажал, по событию отработала перерисовка кнопки на нажатую, отвел, отжал кнопка не восстановилась. ну это если событие не обрабатывать.
> передумал и отвел мышь в сторону, а потом отпустил.
это событие onclick, его можно "передумать", а маусап нет.