gpt4 book ai didi

cocoa - NSOutlineView 奇怪的填充正在裁剪徽章

转载 作者:行者123 更新时间:2023-12-03 16:46:12 28 4
gpt4 key购买 nike

我创建了一个基于 View 的 NSOutlineView ,其中包含图像和徽章(内联按钮)。虽然自定义单元格足够宽,但我遇到以下问题:

enter image description here

因此,右侧有一个奇怪的边距覆盖了我的徽章(NSOutlineView 嵌入在 ScrollView 中,而嵌入在 SplitView 中)。

有什么想法吗,如何删除这个边距/覆盖?

最佳答案

好吧,我的最后一条评论给了我答案;)据我所知,这确实是滚动条的问题,无论它是否隐藏。我认为这是旧版 OS X 的遗留问题,其中滚动条是永久显示的。当您调整大纲 View (嵌入 ScrollView 和嵌入分割 View )的大小时,单元格的宽度将自动变得比大纲 View 本身的宽度小一点(可能是因为 NSScrollView 代码认为,它必须调整因为滚动条)。

因此,我对 NSTableCellView 进行了子类化(我使用的是基于 View 的大纲 View )并添加了以下内容:

- (void)setFrameSize:(NSSize)newSize {
//resize the textframe, so that it will not be cropped too early with "..."
NSRect textFrame = self.textField.frame;
textFrame.size.width = newSize.width;
self.textField.frame = textFrame;

//increase the size of the whole cell
newSize.width = newSize.width + 10.0;

[super setFrameSize:newSize];
}

您还必须增加文本框的宽度,因为 - 正如您在 Finder 或 Mail 等中看到的 - 单元格的文本很早就被裁剪了(带有“...”)。通过增加其宽度,这个问题也得到解决。

我希望这个描述几乎可以理解;)

关于cocoa - NSOutlineView 奇怪的填充正在裁剪徽章,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22208764/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com