2009-09-05 52 views
0

在Objective-c/Cocoa中,我如何獲得Finder用於桌面的圖標(它看起來像帶菜單欄和底座的黑色/粉色星雲桌面圖像)。如何獲取Finder中使用的桌面圖標?

我嘗試這樣做:

NSImage *icon = [[NSWorkspace sharedWorkspace] 
       iconForFileType: NSFileTypeForHFSTypeCode(kDesktopIcon)]; 

但我得到的是一個藍色的文件夾上有一個幻影桌面的前瞻性箱。是否有另一個常量提供這個圖標,或另一個方法來獲取圖標?

回答

0

你正在尋找位於圖標:/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ToolbarDesktopFolderIcon.icns

我沒能找到一個常數,但你可以用imageWithContentsOfFile:加載圖像。

+0

謝謝! 如果有人知道這個常數(如果蘋果改變了它的位置),請在這裏發佈。 – 2009-09-05 16:57:48

+1

工具欄圖標有自己的常量名稱。那個是'kToolbarDesktopFolderIcon'。 – 2009-09-05 18:39:50

+0

順便說一句,如果你想了解更多這些圖標,IconsCore.h是非常好的閱讀。您可以使用我的IconGrabber應用程序嘗試圖標:http://boredzo.org/icongrabber(需要Rosetta) – 2009-09-05 18:41:10