How can I detect the mouse over a button?

I know this sounds like a simple question, and I thought the answer would be easy, but I’m finding it surprisingly difficult. The problem is that I don’t want to find out if the mouse is over the current button, I want to find out from one button if the mouse is over another.
Here is the scenario: I have several buttons in my UI. Most of them are very simple, but a few of the button have secondary options. What I want is when the mouse is over a button with options, that a series of new buttons will pop up showing the options. This part works fine. The hard part is hiding or destroying those dynamically created buttons when the mouse leaves the parent button. I’m trying to use the Point.Exit event. But when the mouse leaves the parent and enters a child button, that also counts as exiting. So, what I’m trying to accomplish is to detect if the mouse left the parent, but is currently over a child. It seems straightforward, but I have yet to find an answer.
I would appreciate any suggestions on how to accomplish this task, or suggestions for a better solution.

There is a special function called OnMouseOver(). Maybe thats what you are looking for?

Docs: (Unity - Scripting API: MonoBehaviour.OnMouseOver())

to keep the parent alive when the child pops up, and you go over to the child, but close all only when mouse off it all? i think you are doing, cos I am about to do same thing

  • one onmouseover script for each of the parent and child.
  • boolean true for the child if active.(in the child script)
  • back to the parent script for the set active (false) for the parent,
    put it in if child getcomponent
    boolean is false

so the parent stays open going to the child, and both die, when you leave both.

I think thats what you mean!!! if you mean something else, i dont get it

Update: i dont think onmouseover works for UI elements. i cant get mine working either…i think its OnMouseEnter… mine not working either