如果需要超过水平可用空间,我需要测量字符串宽度以腾出空间(垂直)。我可以在NSTextField上执行此操作,但是在NSTokenField上?
>NSTokenField继承自NSTextField(以及文档中提到的其他类),所以应该没有问题。
这是我
在其他地方找到的答案:
- (void)resizeTokenField;
{
NSRect oldTokenFieldFrame = [self.tokenField frame];
NSSize cellSize= [[self.tokenField cell] cellSizeForBounds:[self.tokenField
bounds]];
[self.tokenField setFrame:NSMakeRect(
oldTokenFieldFrame.origin.x,
oldTokenFieldFrame.origin.y+ oldTokenFieldFrame.size.height-
cellSize.height,
oldTokenFieldFrame.size.width,
cellSize.height)];
}