When the mouse moves along the ComboBox text field (instead of the arrow), it is not a single call to OnMouseEnter , and then OnMouseLeave , but a series of continuous calls to OnMouseLeave / OnMouseLeave (it looks like a pair of OnMouseLeave / OnMouseLeave for each mouse move).

This happens only if the Style property is csDropDown . If the Style property is csDropDownList , then the behavior is standard.

Tell me, is it possible to somehow fix it?

  • It seems that this is not a bug, but a feature =) The same happens in XE5. Tell us why you need these events, you can figure out how to fix it. - kot-da-vinci
  • I wanted to hang an analog TApplication.OnHint for this event. Those. when the cursor enters the boundaries of the control, a text string is displayed in a specific field. - Mike
  • You can check what is written in this field on the event and change its contents only if necessary. - kot-da-vinci

1 answer 1

 protected procedure OnMouseEnter( e: MouseEventArgs ); override; 
  • Try to write more detailed answers. Explain what is the basis of your statement? - Nicolas Chabanovsky