NSTextField - 如何更改文本/编辑区域的大小和位置?

时间:2012-11-18 12:39:33

标签: objective-c macos cocoa appkit

好吧,我得到了这个:http://d.pr/i/jItM

我显然希望将文字向下移动并远离左边缘。我有NSTextField的子类,我绘制了背景,但我无法找到它。

1 个答案:

答案 0 :(得分:5)

知道了。两者都需要重写。

- (void)editWithFrame:(NSRect)aRect inView:(NSView *)controlView editor:(NSText *)textObj delegate:(id)anObject event:(NSEvent *)theEvent
{
    aRect.origin.y += 9;
    aRect.origin.x += 10;
    [super editWithFrame:aRect inView:controlView editor:textObj delegate:anObject event:theEvent];
}

- (void)selectWithFrame:(NSRect)aRect inView:(NSView *)controlView editor:(NSText *)textObj delegate:(id)anObject start:(NSInteger)selStart length:(NSInteger)selLength
{
    aRect.origin.y += 9;
    aRect.origin.x += 10;
    [super selectWithFrame:aRect inView:controlView editor:textObj delegate:anObject start:selStart length:selLength];
}