... Is it possible to create hot-spots in C# so that when the mouse is over a certain area an event gets triggered?
Create a transparent Panel
(truly transparent - by setting the WS_EX_TRANSPARENT bit in its extended window style - here's how), put it in the position you want on top of other controls, and handle MouseMove
on it.
Your standard From object exposes a OnMouseMove event. Given that you don't have any controls where the hot spots will be, you could just handle the coordinates in that event:
protected override void OnMouseMove(MouseEventArgs mouseEvent) { string X = mouseEvent.X.ToString(); string Y = mouseEvent.Y.ToString(); //Add code here to match X & Y to your hot spot coordinates. }
Add a MouseHover event handler for the control(s) that you want your hotspot over.
You can use WndProc to capture windows messages, or you could use GetCursorPos to get the cursor position on the screen.