4

我想在我的 NSPopUpButton 中显示带有图标的文件夹。用于选择文件路径的弹出窗口很常见。我是新用户,不能发图片。你可以看到,例如在 U Torrent->preferences->directories

请提供详细的答案,因为我对此完全陌生。

非常感谢,对不起我的英语不好

4

1 回答 1

5

对于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];

注意iconForFile:in的使用NSWorkspace,它允许您显示在 Finder 中使用的相同图标。

有关更多示例,您可以查看 Apple 提供的此示例代码:ButtonMadness

于 2012-11-25T05:14:54.017 回答