Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемы с ЛКМ (нажал на объекте, отпустил вне)


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, его можно "передумать", а маусап нет.


Наверх

Титульная страница Поиск, карта сайта Написать письмо