首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在使用NSTreeController时查找NSOutlineView行索引

如何在使用NSTreeController时查找NSOutlineView行索引
EN

Stack Overflow用户
提问于 2010-05-03 06:02:43
回答 1查看 1.7K关注 0票数 0

我正在使用NSTreeController来管理NSOutlineView的节点。当用户添加新项时,我创建一个新对象并插入它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
EntityViewEntityNode *newNode = [EntityViewEntityNode nodeWithName:@"New entity" entity:newObject];

// Insert at end of group
//
NSIndexPath *insertAt = [pathOfGroupNode indexPathByAddingIndex:[selected.children count]];
[entityCollectionTreeController insertObject:newNode atArrangedObjectIndexPath:insertAt];

现在,我想打开表列进行编辑,这样用户就可以命名新项目了。这似乎合乎逻辑:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NSInteger row = [entityCollectionOutlineView rowForItem:newNode];
[entityCollectionOutlineView editColumn:0 row:row withEvent:nil select:YES];

但是,row始终为-1,表示找不到该对象。查看一下就会发现,树控制器实际上并没有将我的对象直接放入树中,而是将它们包装在自己的节点对象中。

有没有人知道我将如何获得相对于大纲视图的行索引,这样我就可以做到这一点(希望不用枚举大纲视图中的所有内容并计算回节点的映射?)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-03 06:55:46

当您插入一个新节点时,它会自动在outline视图中被选中。这样您就可以通过使用...

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NSInteger selectedRow = [entityCollectionOutlineView selectedRow];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2756360

复制
相关文章
SQL数据库-新增字段时,给默认值的方法
alter table 表名 ADD 字段 int NOT NULL DEFAULT 0
Lic工作室
2021/04/29
1.9K0
SQL数据库-新增字段时,给默认值的方法
关于conda 更新时权限的问题
就被告知以下错误:PermissionError(13,'Permission denied)
戈贝尔光和热
2018/12/27
2.1K0
hibernate 插入数据时让数据库默认值生效
用hibernate做数据库插入操作时,在数据库端已经设置了对应列的默认值,但插入的数据一直为null。查找资料发现,原来是hibernate的配置项在作怪。 Hibernate允许我们在映射文件里控制insert和update语句的内容.比如在映射文件中<property 元素中的update属性设置成为false,那么这个字段,将不被包括在基本的update语句中,修改的时候,将不包括这个字段了.insert同理.dynamic动态SQL语句的配置也是很常用的.下面介绍配置SQL语句的具体属性: 1)
小柒2012
2018/04/13
1.5K0
更新时 Fiber 节点能否复用?
当产生更新时,workInProgressTree 的 Fiber 节点有两种方式生成:
玖柒的小窝
2021/12/07
5280
Linq to Sql 更新数据时容易忽略的问题
越来越多的朋友喜欢用Linq to Sql来进行开发项目了,一般我们都会遇到CRUD等操作,不可否认,在查询方面Linq真的带来很大的便利,性能方面也表现不错,在插入操作和删除操作中,Linq的表现也还不错,但是在更新某条记录的时候,性能就相对比较弱了,我们一般会使用ExecuteSql等方法来执行脚本。 不过有时候,我们还是会使用Linq to Sql来进行Update,执行的步骤:获取一个记录-〉更新字段 -〉submitChanges() 昨天遇到了一个问题,流程都没有错,但是更新的时候始终没有更新到
脑洞的蜂蜜
2018/02/01
1.3K0
成员变量的默认值
int类型的默认值是0 String类型的默认值是null double类型的默认值是0.0d Integer类型的默认值是null Long类型的默认值是null long类型的默认值是0L float类型的默认值是0.0f char类型的默认值是\u0000 byte类型的默认值是(byte)0 short类型的默认值是(short)0
gfu
2019/09/18
2.6K0
TortoiseSVN 从 GitHub 更新时发生异常
使用 TortoiseSVN 从 GitHub 仓库 Update 时,弹出错误提示对话框:
mzlogin
2020/04/16
1.3K0
TortoiseSVN 从 GitHub 更新时发生异常
使用 TortoiseSVN 从 GitHub 仓库 Update 时,弹出错误提示对话框:
零式的天空
2022/03/28
1.2K0
MySQL 5.7建表时date类型提示默认值类型错误的问题处理
报的错误是时间的默认值有错误,查阅后发现原来是 MySQL 5.7 版本开始有了一个 STRICT MODE(严格模式),此模式中对默认值做了一些限制。
用户7657330
2021/01/07
3.3K0
使用dbms_stat采集统计信息时estimate_percent和cascade的默认值
收集统计信息可以用dbms_stats包,通常用这样的语法:exec dbms_stat.gather_table_stats(ownname=>'xxx', tabname=>'xxx', estimate_percent=>xxx, method_opt=>'xxx', cascade=>xxx);
bisal
2019/01/29
2.8K0
当我学python时遇见的问题汇总(持续更新)
PS:一开始我在cmd里面安装过pygame的,但是我用IDLE运行时还是出错,于是只能自己去网上下载来安装
天天Lotay
2022/12/01
5510
当我学python时遇见的问题汇总(持续更新)
解决多个版本的python共存时的问题 => 持续更新
WINDOWS Q1: 从命令行启动只能通过python 无法区别不同版本的python(比如2.7和3.4),实际上只能启动某一个特定版本 A1: 可以分别将不同版本的python安装根目录下的py
拓荒者
2019/03/16
9070
Spring Data默认值的错误
Spring Data有很多配置的默认值,但不一定都适合你。如一个依赖Cassandra 的项目,有时写入数据后,并不能立马读到。这种错误并没有什么报错,一切都是正常的,就是读不到数据。
JavaEdge
2023/01/15
1.1K0
SQL Server2000导出数据时包含主键、字段默认值、描述等信息
时经常用SQL Server2000自带的导出数据向导将数据从一台数据库服务器导出到另一台数据库服务器: 结果数据导出了,但表的主键、字段默认值、描述等信息却未能导出,一直没想出什么方法
阿炬
2018/05/11
1.2K0
Laravel Validator 更新时验证记录唯一的小技巧
这样在新增的时候是没什么问题的,但是在更新的时候就出现了一个问题,就是当我们的title没有发生改变的时候,我们使用unique的时候,会将原来的记录行进行扫描,这样就会提示我们该标题已经存在。
魔王卷子
2019/05/30
1.6K0
更新数据时,MySQL的聚簇索引是如何变化的?
搜索一个主键id对应的行,先去顶层的索引页88里通过二分查找,定位到你应该去下层哪个索引页里继续找。
JavaEdge
2022/02/20
1.7K0
更新数据时,MySQL的聚簇索引是如何变化的?
CentOS 使用 yum update 更新时保留特定版本的软件
有时需要保留特定版本的软件不升级,但升级其他软件,这时就需求用到下面的技巧。当CentOS/RHEL/Fedora下的Linux服务器使用 yum update 时命令如何排除选定的包呢?
用户1685462
2021/08/31
1.5K0
函数默认值
面试中可能会问到下面问题 function say(a = 1) { console.log(a); } say(null); say(undefined); say(); say(0); console.log(say.length); // say.length表示函数形参个数 关于答案,我先卖个关子,相信你看了下面的解析就会被安排的明明白白。 基本用法 1个参数有默认值 // ES6代码 function say(a = 1) { console.log(a); } // 转为ES5代码 f
grain先森
2019/08/23
1.5K0
点击加载更多

相似问题

更新时Kartik Depdrop Widget的默认值?

20

嵌套默认值-更新值时出错

12

MySQL:更新时设置为默认值

20

防止在更新时使用默认值

11

重复键更新时的MySQL默认值错误

26
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文