macOS开发NSMenu NSMenuItem的简单是使用-鼠标右键菜单栏
鸣谢:哈尔滨的酸柠檬
先睹为快
#import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; } #pragma mark 获取鼠标右键事件 -(void)rightMouseDown:(NSEvent *)event{ //创建Menu NSMenu *theMenu = [[NSMenu alloc] initWithTitle:@"Contextual Menu"]; //NSMenu *theMenu = [[NSMenu alloc] init]; //常规添加菜单 [theMenu insertItemWithTitle:@"Item 1"action:@selector(beep:)keyEquivalent:@""atIndex:0]; [theMenu insertItemWithTitle:@"Item 2"action:@selector(beep:)keyEquivalent:@""atIndex:1]; //自定义的NSMenuItem NSMenuItem *item3 = [[NSMenuItem alloc]init]; item3.title = @"Item 38"; item3.target = self; item3.action = @selector(beep:); [theMenu insertItem:item3 atIndex:2]; [NSMenu popUpContextMenu:theMenu withEvent:event forView:self.view]; } #pragma mark 统一使用响应方法,不然不使用该方法的菜单栏将不能点击 -(void)beep:(NSMenuItem *)menuItem{ NSLog(@"_____%@", menuItem); } #pragma mark 暂时不清楚这是干什么的 - (void)setRepresentedObject:(id)representedObject { [super setRepresentedObject:representedObject]; // Update the view, if already loaded. } @end
分类:
oc学习笔记
, mac os开发笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库