测量NSTokenField上的字符串宽度

时间:2014-04-03 22:57:03

标签: macos cocoa nstokenfield

如果需要超过水平可用空间,我需要测量字符串宽度以产生空间(垂直)。我可以在NSTextField上执行此操作,但是在NSTokenField上执行此操作吗?

2 个答案:

答案 0 :(得分:0)

NSTokenField继承自NSTextField(以及文档中提到的其他类),所以应该没问题。

答案 1 :(得分:0)

以下是我在其他地方找到的答案:

- (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)];

}