【问题标题】:How to connect three NSTableview如何连接三个 NSTableview
【发布时间】:2018-02-25 04:25:22
【问题描述】:

我有点挑战。我在一个视图中有三个 nstableviews(称为 Ord、Pred、Succ、cell based)。当我单击第一个表(Ord)的特定行时,我想用数据填充我的三个表(Pred,Succ)中的两个。另一件事是,每次单击新行时,它应该清除之前的两个表显示新数据。将要填充的数据在方法 fillSucc 中。我为另外两个表创建了一个模型和一个数组控制器并绑定它们,这样我就可以更轻松地操作模型。但是现在我被卡住了,我不知道现在该怎么办。

首先是 Succ 表模型 #导入

@interface Succ : NSObject
{
NSString* check;
NSString* numero;
NSString* designation;
NSString* durpr;
NSString* debtot;
NSString* lien;
NSString* decal;
NSString* mgt;
NSString* debavtache;
}
 @property (copy) NSString* check,*numero, *designation, *durpr, *debtot,*lien,*decal, *mgt,*devavtache;
@end

Pred Table 的模型:

#import <Foundation/Foundation.h>

@interface Pred: NSObject
{
NSString* check;
NSString* numero;
NSString* designation;
NSString* durpr;
NSString* debtot;
NSString* lien;
NSString* decal;
}
 @property (copy) NSString* check,*numero, *designation, *durpr, *debtot,*lien,*decal;
@end

一切正常,我只是不知道如何实现这一点。自 4 小时以来,我一直在尝试解决这个问题,但这很难,而且我正在绕圈子。

【问题讨论】:

  • Pred和Succ中的数据与Ord有什么关系?问题是什么?
  • Pred 和 Succ 与 Ord 具有相同的编号、名称、留置权和贴花。其余的则完全不同,必须计算。
  • fillSucc中/之后设置Pred和Succ的arraycontrollers的内容。或者将 arraycontrollers 的内容绑定到属性,并在fillSucc 中/之后设置属性。
  • 非常感谢 Willeke,它成功了!非常非常感谢!

标签: objective-c macos cocoa nstableview


【解决方案1】:

您的委托方法和数据源方法应检查方法中的 tableView 是否 == 您要操作的特定表。伪代码示例:() cellForRowAtIndexPath() { if tableView == Ord {.. do Ord stuff} else if tableView == Pred {.. do Pred stuff} } 等。然后将类似的逻辑应用于所有 tableview 委托和数据源方法!

【讨论】:

  • 您在问题中错过了“arraycontroller and bind them”。
猜你喜欢
  • 2014-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-08
  • 2015-08-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多