Q: I'm trying to implement tracking rectangles so that I can recieve -mouseEntered: and -mouseExited: messages and provide visual feedback to the user. I've sent my view an -addTrackingRect:owner:userData:assumeInside: message, but it seems to have no effect.A: This symptom usually results from trying to set tracking rectangles before your view has been added to a window. Although NSView implements the -addTrackingRect:owner:userData:assumeInside: method, the list of tracking rectangles is kept by the window, not the view. When your -initWithFrame: method is executed, your view is not yet associated with any window, so the view can't actually set any tracking rects. A better place to send your -addTrackingRect: .. messages is in a -viewDidMoveToWindow: or -awakefromNib method. Document Revision HistoryDate | Notes |
---|
2004-12-02 | Describes a common mistake in setting up cursor-tracking rectangles. |
Posted: 2004-12-02
|