gpt4 book ai didi

cocoa - 单击 NSActionCell 时防止 NSOutlineView 中的选择发生更改

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

我有一个自定义 NSActionCell,用于渲染 NSOutlineView 中某些行的某些部分。我可以接收并响应 NSActionCell 上的点击,但是当单击该单元格时,选择也会发生变化。如果我的自定义 NSActionCell 之一被单击,我想阻止选择发生更改。

有没有简单的方法可以做到这一点?

最佳答案

回答我自己的问题:

如果您希望能够单击的单元格(并且随后选择一行)位于其自己的列中,那么以下 Apple 示例非常有用:

DragNDropOutlineView

该示例依赖于实现以下 NSOutlineViewDelegate方法(在AppController.m第304行中实现):

- (BOOL)outlineView:(NSOutlineView *)outlineView shouldSelectItem:(id)item

如果一个单元格位于另一个单元格内,您仍然可以使用该方法,但您需要做更多的工作来确定鼠标是否在子单元格内单击。下面的 Apple 示例就是一个很好的演示逻辑的示例:

PhotoSearch

关于cocoa - 单击 NSActionCell 时防止 NSOutlineView 中的选择发生更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2330921/

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