我想知道是否有像下面的样例那样绘制NSCell的方法。这样做的目的是在同一列,3行,第一列有足够的空间,一个标题,其余的有2列。
TITLE______________________________________________________
DATA\_TITLE\_1: DATA\_VALUE\_1 \_ \_ \_ DATA\_TITLE\_2: DATA\_VALUE\_2DATA\_TITLE\_3: DATA\_VALUE\_1 \_ \_ \_ DATA\_TITLE\_4: DATA\_VALUE\_2备注:
提前谢谢。
发布于 2011-07-07 13:27:27
结果是,当子类NSCell时,您可以在帧中添加任意数量的单元格。您只需重写drawInteriorWithFrame方法分配一个NSCell,然后将其绘制到单元格框架内的任何位置。
这里是一个简单的例子:
- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView {
NSRect modifiedFrame = NSMakeRect(cellFrame.origin.x +10, cellFrame.origin.y +10, cellFrame.size.width -10, cellFrame.size.height -10);
NSTextFieldCell *modifiedCell = [[NSTextFieldCell alloc] initTextCell:@"TEST"];
[modifiedCell drawWithFrame:modifiedFrame inView:controlView];
[super drawInteriorWithFrame:cellFrame inView:controlView];
}发布于 2011-07-05 09:10:17
没有标准的NSCell可以做到这一点,但是您可以编写自己的NSCell类的子类并让它这样做。见控制和单元程序设计主题。
https://stackoverflow.com/questions/6576180
复制相似问题