2016-07-19 4 views
0

editing (Редактирование) not editing (не редактирование)NSTextField текст заполнителя не отображается, если только редактирование, что мне делать?

У меня есть Подкласс NSTextFieldCell, а затем переопределить этот метод:

-(void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView 
{ 
    NSRect customRect = cellFrame; 
    customRect.origin.y = cellFrame.size.height - 1; 
    customRect.origin.x = 0; 
    NSColor *color = [NSColor grayColor]; 
    [color setFill]; 
    NSBezierPath *path = [NSBezierPath bezierPathWithRect:customRect]; 
    [path fill]; 
    [super drawWithFrame:customRect inView:controlView]; 
} 

Наконец я Set Class поле NSTextFieldCell в Interface Builder

+0

Редактирование двух скриншотов и редактирование выше моего вопроса. Это мое первое время, чтобы обратиться за помощью. Я не очень хорошо разбираюсь в том, как обратиться за помощью сюда. –

ответ

0

Это не ясно что вы пытаетесь сделать точно, хотя ваш NSTextFieldCell показывает только самую верхнюю часть (точнее, 1 пиксель).

customRect.origin.y = cellFrame.size.height - 22; 

Если вы хотите видеть ячейку, когда вы ее не редактируете, переместите ее (измените значение 1 на 22 и т. Д.).

+0

Большое спасибо, я просто хочу, чтобы мой TextField показывал, что это нижняя граница, как у QQ. Я только нашел этот способ в Интернете. Есть ли способ лучше? –

Смежные вопросы