2012-11-20 40 views
4

我想在我的NSPopUpButton中顯示帶有圖標的文件夾。用於選擇文件路徑的彈出窗口很常見。我是新用戶,我無法發佈圖片。你可以看到,例如在U的Torrent - >首選項 - >目錄在NSPopUpButton中顯示文件夾

請提供詳細的答案,因爲我完全是新的。

非常感謝和抱歉,我的英語不好

回答

4

對於你的菜單中的每個NSMenuItem,您需要設置相應的圖像,調用setImage:

總之,你需要準備你的菜單項,附加它的菜單,並附加後者您的彈出按鈕,就像這樣:

NSPopUpButton *yourButton = [[NSPopUpButton alloc] init]; 
NSMenu *yourMenu = [[NSMenu alloc] init]; 

NSMenuItem *menuItem = [[NSMenuItem alloc] initWithTitle:@"some label" action:nil keyEquivalent:@""]; 
NSImage *iconImage = [[NSWorkspace sharedWorkspace] iconForFile:@"yourFilePath"]; 
[iconImage setSize:NSMakeSize(16,16)]; 

[menuItem setImage:iconImage]; 
[yourMenu insertItem:menuItem atIndex:0]; 
[yourButton setMenu:yourMenu]; 

注意在NSWorkspace使用iconForFile:,讓你展現在Finder中使用的相同的圖標。

欲瞭解更多示例,你可以看看蘋果的這個示例代碼:ButtonMadness