2013-03-11 105 views
1

我需要在OS X中更改應用程序的標題欄顏色。我最好喜歡一個涉及Cocoa或Carbon的解決方案,但如果有必要,我可以做其他場所。從本質上講,我的一個客戶希望標題欄是黑色的,而不是灰色。我知道這是可能的,因爲OS X的提醒應用程序可以做到這一點,就像Firefox帶有人物角色和帶有主題的Google Chrome一樣。如何更改Cocoa應用程序的標題欄顏色?

我知道這可能會破壞用戶體驗,我也考慮過其他選項,但這是客戶需要的方式,我需要提供。由於窗口已經設計好了,我無法真正使用一個標題欄較少的窗口,我敢肯定,這會比單純更改窗口顏色更能殺死用戶體驗。

任何想法將不勝感激。

回答

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
輸出

enter image description here

+0

謝謝,但我沒** **說我不能使用標題欄/因爲已經設計了應用程序窗口,因此無邊框窗口。不過,這是一個很好的方法。如果我不需要常規的OS X按鈕,我可能會這樣做。 – SevenBits 2013-03-11 18:37:44

相關問題