@interface Tray : NSObject <NSApplicationDelegate> {
NSStatusItem *trayItem;
}
@end
@implementation Tray
- (IBAction)testAction:(id)sender;
{
NSLog(@"Hello World");
}
- (IBAction)quitAction:(id)sender;
{
[NSApp terminate:sender];
}
- (void)applicationDidFinishLaunching:(NSNotification *)note;
{
NSZone *zone = [NSMenu menuZone];
NSMenu *menu = [[[NSMenu allocWithZone:zone] init] autorelease];
NSMenuItem *item;
item = [menu addItemWithTitle:@"Testing" action:@selector(testAction:) keyEquivalent:@""];
[item setTarget:self];
item = [menu addItemWithTitle:@"Quit" action:@selector(quitAction:) keyEquivalent:@""];
[item setTarget:self];
trayItem = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] retain];
[trayItem setMenu:menu];
[trayItem setHighlightMode:YES];
[trayItem setTitle:@"HERE"];
}
- (void)dealloc;
{
[trayItem release];
[super dealloc];
}
@end
往 OS X 状态栏中添加图标
最新推荐文章于 2025-08-16 15:52:27 发布
本文详细介绍了如何使用Objective-C创建NSStatusItem,并将其与NSApplicationDelegate结合使用来实现简单的状态栏应用。包括如何创建菜单项、处理用户交互事件以及应用程序启动时的初始化逻辑。
85

被折叠的 条评论
为什么被折叠?



