0
如果需要超過水平可用空間,我需要測量字符串寬度以創建空間(垂直)。我可以在NSTextField上執行此操作,但在NSTokenField上執行此操作?在NSTokenField上測量字符串寬度
如果需要超過水平可用空間,我需要測量字符串寬度以創建空間(垂直)。我可以在NSTextField上執行此操作,但在NSTokenField上執行此操作?在NSTokenField上測量字符串寬度
這裏是一個答案,我在別處找到了:
- (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)];
}
NSTokenField繼承自NSTextField(和文檔中提到的其他頂級類),所以它應該沒問題。