首页 文章

如何显示类似NSTextView的上下文菜单

提问于
浏览
1

我希望每次调用我的自定义 NSResponder -subclass的 -rightMouseDown -method时,为某个 NSString 对象(例如,"text")提供类似NSTextView的上下文菜单 .

enter image description here

我在哪里可以获得某些 NSString 的这些物品?

UPD

创建 NSTextView 实例并使用其 -menuForEvent: -method . 一些项目被禁用(如'copy'等),我将其目标值重置为具有重写选择器的自定义对象(如 -copy: 和其他) .

1 回答

  • 4

    NSTextViewNSView 的子类,provides a class method +defaultMenu . 因此,您可以要求 NSMenu * menu = [NSTextView defaultMenu]; 随意获取您自己的副本 . 您可能必须遍历其结构并自定义单个 NSMenuItem 实例以调整其目标/操作,但大多数(全部?)应该可以正常使用nil-target(向第一响应者发送操作)及其默认操作 .

    但我必须承认,我不确定你的意思是“我在哪里可以获得某些 NSString ?”从某些UI控件(如文本视图)打开上下文菜单,并将其操作(如 -checkSpelling... )发送到某个目标(如第一个响应者;它应该类似于文本视图,它充当字符串的视图或归因于字符串) .

相关问题