2013-03-11 4 views
1

Мне нужно изменить цвет строки заголовка приложения в OS X. Я бы предпочел бы использовать решение, использующее Cocoa или Carbon, хотя при необходимости я могу делать другие места. По сути, мой клиент хочет, чтобы строка заголовка была, скажем, черной, а не серой. Я знаю, что это возможно, поскольку приложение напоминаний OS X делает это, как Firefox с персонажами и Google Chrome с темами.Как изменить цвет строки заголовка приложения какао?

Я знаю, что это может испортить пользовательский интерфейс, и я рассмотрел другие варианты, но так хочет клиент, и мне нужно его доставить. Я не могу использовать окно заголовка меньше, поскольку окно уже спроектировано, и я уверен, что это может убить пользователя больше, чем просто изменить цвет окна.

Любые мысли будут высоко оценены.

ответ

2

Посмотрите на Apple's Core Data Stickies sample app

1. Create borderless window. 

- (id)initWithContentRect:(NSRect)contentRect 
       styleMask:(unsigned int)styleMask 
        backing:(NSBackingStoreType)backingType 
        defer:(BOOL)flag 
{ 
    if (self = [super initWithContentRect:contentRect 
           styleMask:NSBorderlessWindowMask 
            backing:backingType 
            defer:flag]) { 
     [self setBackgroundColor:[NSColor yellowColor]]; 
     [self setHasShadow:YES]; 
    } 
    return self; 
} 

- (BOOL)canBecomeKeyWindow { return YES; } 

2. Place view on that window and implement custom title bar. 

enter image description here
OUTPUT

enter image description here

+0

Спасибо, но я ** ** сделал сказать, что я не могу использовать строку заголовка/border less window, поскольку окно приложения уже создано. Однако это простой способ сделать это. Если бы мне не нужны обычные кнопки OS X, я бы, вероятно, это сделал. – SevenBits

Смежные вопросы