Search code examples
macoscocoansstatusbar

Change a menu bar applications font size


Might a simple method of changing a menu bar application titles font size exist, making @"title" display smaller (or larger) than default

statusItem = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength] retain];

[statusItem setHighlightMode:YES];
[statusItem setTitle:@"title"];
[statusItem setMenu:statusMenu];

Solution

  • I found a similar method which works

    statusItem = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength] retain];
    
    NSFont *font = [NSFont fontWithName:@"LucidaGrande" size:12.0];
    NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName];
    NSAttributedString *attrString = [[NSAttributedString alloc] initWithString:@"title" attributes:attrsDictionary];
    
    [statusItem setHighlightMode:YES];
    [statusItem setAttributedTitle:attrString];
    [statusItem setMenu:statusMenu];
    

    https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/AttributedStrings/Tasks/CreatingAttributedStrings.html

    thanks