我正在使用NSTextFieldCell的一个子类,并试图在NSTextFieldCell子类上单击鼠标右键时显示上下文菜单。
MouseDown和rightMouseDown不只适用于NSTextFieldCell子类的对象,对于所有其他自定义子类,比如NSButtonCell的子类,一切都很好。
有人能帮我解决这个问题吗?
谢谢!
发布于 2014-05-26 22:28:19
NSCell有一个可设置的-(NSMenu*)菜单属性,该属性可用于定义上下文菜单(重载-menu isNot足够好)。NSCell与NSControl相关联。NSControl (在您的示例中是NSTextField的实例)是NSView的超类,它有一个可设置的-(NSMenu*)defaultMenu属性来定义上下文菜单,并响应-(NSMenu*)menuForEvent:如果您想要动态创建上下文菜单。NSView是NSResponder的超级版本,它也有-(NSMenu*)菜单属性,并响应-(void)rightMouseDown/Dragged/Up:。
https://stackoverflow.com/questions/23871053
复制相似问题