Перейти к содержанию
  • 0
Zyablik3000

OnMouseEnter срабатывает при каждом перемещении мыши по контролу

Вопросы

Здравствуйте!

procedure TForm3.Panel1MouseEnter(Sender: TObject);
begin
  ShowMessage('asdasd');
end;

Этот код срабатывает при каждом перемещении мыши по панели.

Проблема в том, что при этом срабатывает и событие MouseLeave.

Проверял на чистом проекте.

Как победить?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

Так происходит потому что вы делаете проверку с помощью ShowMessage. При этом панель теряет фокус и любое движение мыши над ней снова вызывает OnMouseEnter.

Проверяйте так: добавьте на форму компонент TText  и в обработчике панели OnMouseEnter напишите:

    text1.Text:=text1.Text+#13+'asdasd';

Вы увидите, что событие срабатывает корректно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Спасибо! Попробовал) Все получилось. Получается что Brakepoint в этих процедурах тоже ставить нельзя, иначе получится такой же эффект как с ShowMessage.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...