NSTableView 表格操作:增加,删除,编辑(方法2)
在:
NSWindowController
新建表单
(H,M,XIB三个文件+新建一个类放CellData)
1.不使用delegate
2.数据源直接是当前文件File's Owner
3.H继承NSTableView协议,将需要的几个函数放入
4.增加一个列表数据单元类
这个方法的特点是:
当新建立一个窗体,显示一个表格内容,不使用Deleget就少了一个类的2个文件,让程序简单化
操作步骤:
STEP1 将NSTableView的DataSource拉向File's Owner(这一步相当于之前用另外一个类和Deleget作为表格的数据源)
STEP2 将这个控件在H里面申明
STEP3 在XIB对应的H里面增加这个控件的协议
STEP4 在M文件里面,需要将协议必备的几个函数写入,并且修改对应的代码
注意:数据源和定义申明的时候,选择表格(不包括标题),选择2次就可以选中
注意:每个列:ID值是数据单元中申明的变量,需要复制,不能手动选择
本人测试成功!
以下是源代码
表格对应的数据单元
H文件
@interface List_Column : NSObject
{
NSString *col_no;
}
@property (readwrite,copy) NSString *col_no;
@end
M文件
#import "List_Column.h"
@implementation List_Column
@synthesize col_no;
@end
XIB对应的类,这个类用来作为表格的DataSource
H文件
#import <Cocoa/Cocoa.h>
#import "List_Column.h"
@interface List : NSWindowController <NSTableViewDataSource>
{
NSMutableArray *m_table_rows;
IBOutlet NSTableView *m_table_list;
NSThread *m_thread_load_list;
}
@end
M文件
#import “List.h"
@interface List ()
@end
static bool g_can_click_load = true;
@implementation List
- (