博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nstableView 的 注意事项
阅读量:2384 次
发布时间:2019-05-10

本文共 1112 字,大约阅读时间需要 3 分钟。

表每行的元素放在一个对象中, 所有行存放在一个NSMutableArray, 这样好管理, 当然每列的内容可以分开存放, 但不方便.

* 当表有多列时, (IB中选中列)要为每个列指定一个identifier, 其值为存储的对象的属性名称, 当使用

* [aTableColumn identifier], 就可以取得这一列存储的内容是这个对象的哪一个属性,

* 然后使用key-value-coding([obj setValue:value forKey:@"name"], [obj valueForKey:@"name"])

* 来取得与修改这个对象的属性.

*

* 表的内容是存储在NSTableDataSource, 只要一个类实现了下面两个方法, 然后在界面中直接右击表, 把其中的

* dataSource拖动指到doc window中的这个类(文档的直接是File's Owner, 非文档的先建立一个NSObjectController)

* - (int)numberOfRowsInTableView:(NSTableView*)tv 返回列的行.

* - (id)tableView:(NSTableView*)tv objectValueForTableColumn:(NSTableColumn*)tc row:(int)rowIndex

*

* 如果想使一个表是可以修改的, 再实现下面的这个方法即可

* - (void)tableView:(NSTableView*)tc setObjectValue:(id)anObject

*      forTableColumn:(NSTableColumn*)tc row:(int)rowIndex

*

*

* IBOutlet是一个宏, Interface Builder提供信息(即在其中可以看到IBOutlet修饰的变量).

* 当你想使用一个界面元素的方法(NSTextField), 就声明一个相关的变量为IBOutlet,

* 这样, 在你的程序中就可以直接操作那个界面元素的一切.

*

* IBAction实际上就是void, 但是也是为了给IB提供信息, IBActon定义的方法在IB中显示出来.

* 事件处理函数用IBAction来定义, 如作为NSButtonaction selector.

*

* getter的名字为属性的名字, setter的名字为set加上属性的名字(此时属性的名字的第一个字母要大写).

转载于:https://my.oschina.net/u/942328/blog/193298

你可能感兴趣的文章
tar 命令的用法
查看>>
mount 命令的用法
查看>>
fdisk 命令的用法
查看>>
ln 命令的用法
查看>>
ORACLE的归档空间满导致的监听故障数据库无法启动
查看>>
GRID卸载及重新安装
查看>>
shell 带参数脚本
查看>>
QTcpSocket 编程
查看>>
java 开发环境配置
查看>>
java bufferedreader 与inputstream的区别
查看>>
Jsp页面Word文档的生成
查看>>
二叉树的构建及遍历 Java实现
查看>>
xml schema约束 学习记录
查看>>
线索二叉树(中序) Java实现
查看>>
Hibernate cascade 级联操作
查看>>
马踏棋盘算法 Java实现
查看>>
hibernate hql 多表关联一个小细节
查看>>
普里姆(Prim)算法 Java实现
查看>>
弗洛伊德(Floyd)算法 Java实现
查看>>
拓扑排序(TopologicalSort) Java实现
查看>>