当用户悬停按钮时,我想将 WebView 附加到光标上。并在鼠标退出时将其删除。
即使光标在按钮内移动,我也希望 WebView 继续跟随光标。
关于如何执行此操作的任何想法?
这是一个关于它应该如何的例子:
问问题
320 次
2 回答
0
所以你有一个 NSButton ...子类,所以你附加一个视图:
@interface ButtonWithWebViewOnHover : NSButton
@property(strong) WebView *webView;
@end
覆盖 mouseEntered 和 mouseExited 并切换隐藏
......等等......我们似乎在重新发明轮子
使用 NSPopover (直接来自苹果,但不像下一个那样图形灵活:)
或 MAAttachedWindow (http://mattgemmell.com/2007/10/03/maattachedwindow-nswindow-subclass/)
于 2012-11-11T19:48:32.200 回答
-1
您可以将 WebView 子类化,并考虑将其绘制为调用此方法:
- (void)drawRect:(NSRect)dirtyRect;
ao 如果你在这个方法中调用[super drawInRect: dirctyRect],视图会正常绘制,否则什么都不会绘制。所以你可以查看鼠标是否在视图上,决定是否绘制。
要调整它的大小,您可以使用以下方法:
- (void)setBounds:(NSRect)boundsRect;
要检测鼠标事件,您应该在主视图中实现诸如mouseDown(请参阅NSResponder )之类的方法。
于 2012-11-11T16:00:49.953 回答