提问人:Ishi 提问时间:8/22/2023 最后编辑:HangarRashIshi 更新时间:8/23/2023 访问量:38
更改 NSOutlineView 显示三角形的位置并为子节点设置图标
Changing the position of NSOutlineView disclosure triangle and setting up icons for child nodes
问:
我正在创建一个像这样的 OutlineView:
我想实现一个看起来像这样的视图:
我面临的两个问题是:
我找不到在文件夹图标和名称之间移动显示三角形的方法。
我无法为子节点设置“P”图标。
对于第二个问题,这是我尝试设置图标的代码:
- (void)outlineView:(NSOutlineView *)aTableView willDisplayCell:(NSCell*)aCell forTableColumn:(NSTableColumn *)aTableColumn item:(id)item
{
NSImage* image = nil;
BOOL isLeaf = [item isLeaf];
if ([[aTableColumn identifier] isEqualToString:@"styleIcon"]) {
if (aTableView == _charOutlineView) {
image = [QXPGeneralInterfaces imageFor:(isLeaf ? kCharacterIconImage : kFolderIconImage)];
}
else {
image = [QXPGeneralInterfaces imageFor:(isLeaf ? kParagraphIconImage : kFolderIconImage)];
}
if (image != nil) {
[aCell setImage:image];
}
}
aCell 确实设置了图像,但不知何故它在 UI 中消失了。
答:
0赞
Willeke
8/23/2023
#1
我找不到在文件夹图标和名称之间移动显示三角形的方法。
将文件夹图标放在第 0 列中,将标题放在第 1 列中。将(或 IB 中的“大纲”列)设置为第 1 列。outlineTableColumn
评论