0

使用 NSStepper 和显示步进器递增/递减值的标签实现自定义 NSCell 有多难?

我不能给它添加子视图,那么如何添加这样的子组件呢?

谢谢

4

1 回答 1

0

是的,您可以在 NSTableView 中使用 NSStepperCell。但是要让这个值出现在你的 NSTableView 中,你必须在一个列中拖放两个 NSTableColumn 并拖放 NSStepperCell ,而在另一个默认情况下它将是 textcell ,所以就这样吧。现在使用模型键路径将你的列绑定到数组控制器。在 NSStepperCell 模型中,关键路径应该是浮点值,其他的将是单字符串值。完成此操作后,编写一个操作方法并绑定到 NSStepperCell。下面是为出现值而编写的操作方法。

-(IBAction)doIncrement:(id)sender
{
    step+=1.0; ///This step is the float value of NSStepperCell and binded with arrayController
NSNumber *num=[NSNumber numberWithFloat:step];
    NSMutableDictionary *dict=[NSMutableDictionary dictionary];
    for(dict in [arrayController arrangedObjects])
    {
        [dict setObject:num forKey:@"displayStepperValue"];  //@"displayStepperValue" this is another column textcell which will print steppercell value when you click on the arrows of NSStepperCell.
    }
    [arrayController rearrangeObjects]; //here refershing the arraycontroller

}
于 2013-10-04T10:45:42.593 回答