确定 NSOutlineView 中选定行的部分

发布于 2024-12-25 10:19:32 字数 263 浏览 1 评论 0原文

好的,我已经使用 NSOutlineView 构建了一个侧边栏。我目前在侧边栏中有两个可以扩展/收缩的部分。我希望能够确定所选行属于哪个部分。

- Section 1
-- Item 1
-- Item 2
-- Item 3
- Section 2
-- Item 4
-- Item 5

问题是 selectedRow 值会根据部分是否展开而变化。是否没有简单的方法来确定该行属于哪个部分,而无需手动跟踪扩展/收缩以及每个部分中的项目数量?

OK so I've got a sidebar built using an NSOutlineView. I currently have two sections in the sidebar which can be expanded/contracted. I would like to be able to determine which section the selected row belongs to.

- Section 1
-- Item 1
-- Item 2
-- Item 3
- Section 2
-- Item 4
-- Item 5

The problem is that the selectedRow value changes depending on whether sections are expanded or not. Is there no easy way to determine which section the row belongs to without manually keeping track of expansion/contraction and the number of items in each section?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

烂人 2025-01-01 10:19:32

试试这个:

//returns id of section, where currentRow is a selectedRow
id section = [yourNSOutlineView parentForItem:[yourNSOutlineView itemAtRow:selectedRow]]; 

Try this:

//returns id of section, where currentRow is a selectedRow
id section = [yourNSOutlineView parentForItem:[yourNSOutlineView itemAtRow:selectedRow]]; 
浅沫记忆 2025-01-01 10:19:32

您可以使用所选行的索引调用 [NSOutlineView itemAtRow:] 。

You could call [NSOutlineView itemAtRow:] with the index of the selected row.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文