2013-03-19 275 views
0

我想要NSButton NSImage,類似於蘋果的「預覽」應用程序標記按鈕,選擇時更改顏色。動態更改NSButton NSImage顏色

從查看捆綁軟件資源看來,Apple使用PDF圖像(例如TB_annotMarkupUnderlineTemplate.pdf),並且在選擇VS時以編程方式更改顏色。具有藍色的交替圖像。

我無法使用PDF圖像進行圖像遮罩,因爲它具有alpha值。

有什麼建議嗎?

+0

它總是好的,包括至今讓人們知道你已經至少做出了嘗試,你嘗試過什麼解決的代碼片段。在代碼中找到錯誤比從頭開始創建解決方案要容易得多。 :) – bkbeachlabs 2013-03-19 20:25:56

回答

0

如果我理解你的問題,你想在運行時改變圖像的背景顏色。

即,在某些事件中,您將更改圖像的背景顏色。也正如你所知,NSButton沒有背景,因爲它們是由可可(aqua)風格直接繪製的。

您需要放置一些圖片並隱藏按鈕的標題(如果您不想顯示標題)。

這是我的sample code爲相同。

我已經使用上NSComboBox的IBAction爲,

- (IBAction)comboSelect:(id)sender { 

    if ([[sender stringValue] isEqualToString:@"Red" ]) { 
     [self.button setImage:[NSImage imageNamed:@"imgRed"]]; 
    } 
    else if ([[sender stringValue] isEqualToString:@"Green" ]) { 
     [self.button setImage:[NSImage imageNamed:@"imgGreen"]]; 
    } 
    else if ([[sender stringValue] isEqualToString:@"Blue" ]) { 
     [self.button setImage:[NSImage imageNamed:@"imgBlue"]]; 
    } 
} 
+0

圖像只是一個PDF圖像,可以在選擇時改變顏色。類似於Apple的預覽應用程序(註釋菜單) – 2013-03-20 20:51:27