作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
“第一个数字”乘以“第二个数字”得到“小计”。按“总计”按钮给出“小计”的总和
如图所示,包含数字“5”的单元格处于可编辑状态。当我单击“总计”按钮时,会触发一个方法,该方法将“小计”列中的数字相加。我希望在执行添加之前自动保存处于可编辑状态的数字,以便正确答案为 156.00,而不是“总计”按钮下面的标签中所示的 136.00
最佳答案
记忆一下 MVC 设计模式
您的NSTableView
只是一个 View ,您可以在其上显示模型(数组)。
因此,您更改了 View 部分中的值,但您的模型并未更改。您需要更改模型,即数组或在表格 View 中显示的任何集合。
在按钮操作中只需调用[tableView reloadData]
,然后- (void)tableView:(NSTableView *)tableView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn行:(NSInteger)行
:tablview 的委托(delegate)方法将被调用,并且您的模型将被更新。生成您键入的数据。
检查示例:
- (id)init
{
self = [super init];
if (self) {
self.array=[NSMutableArray new];
for (NSInteger i=0; i<30; i++) {
[self.dict setObject:[NSString stringWithFormat:@"Obj %ld",i] forKey:[NSString stringWithFormat:@"%ld",i]];
self.array[i]=@(i);
}
}
return self;
}
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView{
return self.array.count;
}
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row{
return self.array[row];
}
- (void)tableView:(NSTableView *)tableView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row{
self.array[row]=object;
}
您的答案在这里:
- (IBAction)button:(id)sender {
[self.myTable reloadData];
NSInteger row=[self.myTable selectedRow];
NSLog(@"%@",[self.array objectAtIndex:row]);
}
关于objective-c - NSTableView 在失去焦点时无需按 Enter 键即可保存值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15319922/
这实际上是我问的问题的一部分here ,该问题没有得到答复,最终被标记为重复。 问题:我只需使用 @Autowired 注释即可使用 JavaMailSender。我没有通过任何配置类公开它。 @Co
我是一名优秀的程序员,十分优秀!