Macos 如何在NSView类(Cocoa)中引用NSTableView?
我正在尝试实现一个mac应用程序,基本上我在NSView中有一个NSTableView。 我在NSView上实现了多文件拖放功能,现在我想用刚才删除的文件名更新NSTableView 因此,我需要在NSView中引用NSTableView,并尝试重新加载数据以重新加载tableview 我曾尝试在NSView中初始化tableview控制器,但它似乎不起作用Macos 如何在NSView类(Cocoa)中引用NSTableView?,macos,cocoa,Macos,Cocoa,我正在尝试实现一个mac应用程序,基本上我在NSView中有一个NSTableView。 我在NSView上实现了多文件拖放功能,现在我想用刚才删除的文件名更新NSTableView 因此,我需要在NSView中引用NSTableView,并尝试重新加载数据以重新加载tableview 我曾尝试在NSView中初始化tableview控制器,但它似乎不起作用 MyTableController *testController = [[MyTableController alloc] init];
MyTableController *testController = [[MyTableController alloc] init];
testController.nsMutaryOfDataObject = [[NSMutableArray alloc]init];
int i;
for (i = 0; i < 20; i ++) {
NSString * zStr1 = [[NSString alloc]initWithFormat:@"%d",(i + 1) * 10];
NSString * zStr2 = [[NSString alloc]initWithFormat:@"%d",((i + 1) * 100) + 2];
NSString * zStr3 = [[NSString alloc]initWithFormat:@"%d",((i + 1) * 1000) + 3];
MyDataObject * zDataObject = [[MyDataObject alloc]initWithString1:zStr1
andString2:zStr2
andString3:zStr3];
[testController.nsMutaryOfDataObject addObject:zDataObject];
} // end for
[testController.idTableView setHeaderView:nil];
[testController.idTableView reloadData];
MyTableController*testController=[[MyTableController alloc]init];
testController.nsMutaryOfDataObject=[[NSMutableArray alloc]init];
int i;
对于(i=0;i<20;i++){
NSString*zStr1=[[NSString alloc]initWithFormat:@“%d”,(i+1)*10];
NSString*zStr2=[[NSString alloc]initWithFormat:@“%d”,((i+1)*100)+2];
NSString*zStr3=[[NSString alloc]initWithFormat:@“%d”,((i+1)*1000)+3];
MyDataObject*zDataObject=[[MyDataObject alloc]initWithString1:zStr1
andString2:zStr2
andString3:zStr3];
[testController.nsMutaryOfDataObject addObject:zDataObject];
}//结束
[testController.idTableView setHeaderView:nil];
[testController.idTableView重载数据];
Xib文件如下:
有人能帮我吗 tableview有两个不同的方面:视图(数据表示;拖放)和数据源(与数组控制器组合的数组)。 通常情况下,tableview独立于它所在的视图,独自生活。因此,首先关注数据源方面,其次关注拖放方面
您的代码缺少tableview工作的基本方法,因此请从头开始使用示例。听起来好像电视工作正常 和 NSView类中有可用的文件名 和 不希望在TV类中也实现拖放功能 然后,您可以使用从NSView类发送到TV类的通知,并附加文件名数据。在tv类中接收后,可以使用文件名/将文件名添加到阵列中。我曾经创造了这样一个解决方案,它工作得非常完美
它还确保了类的封装。tableview可以自己作为拖动目标。它将是响应程序,而不是围绕其ScrollView的简单包含视图。我有一个tableview控制器类和数据类,并设置了委托和数据源。然后我有另一个NSView类,它连接到NSTableview嵌入的NSView。最初,拖放方法是在这个NSView类中实现的,这就是为什么我想找到一种引用NSTableview的方法