我想在编辑时更改 NSTableView 单元格中显示的值。我的要求如下:最初我输入了一个单元格值 234.5678978,编辑后该值被四舍五入到 0 十进制精度(即 235)。我的要求是,当我可以单击该单元格时,它应该向我显示某些十进制精度的值,例如 5 精度,在本例中为 234.56790)。我怎样才能实现这个功能。我试图捕捉双击编辑 NSTableView 的单元格的动作:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(editingDidEnd:)
name:NSControlTextDidEndEditingNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(editingDidBegin:)
name:NSControlTextDidBeginEditingNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(editingDidChange:)
name:NSControlTextDidChangeNotification object:nil];
- (void)editingDidEnd:(NSNotification *)notification
{
NSLog(@"text editing fisnished");
}
- (void)editingDidBegin:(NSNotification *)notification
{
NSLog(@"text is being edited");
}
- (void)editingDidChange:(NSNotification *)notification
{
NSLog(@"text was being changed");
}
但只有editingDidEnd
在 tab out 上被调用,其他两种方法从未被调用过。