NSWindow заголовок окна становится белым при изменении размера - PullRequest
0 голосов
/ 08 августа 2010

Я изменяю размеры моего NSWindow , содержащего NSOpenGLView . Изменение размера окна, NSOpenGLView обрабатывает точное изменение размера, но заголовок NSWindow становится полностью белым . Однако можно нажимать кнопки (свернуть, ...), а также их нельзя увидеть.

Изменение размера происходит с помощью следующего кода в контроллере Windows. Метод вызывается в основном потоке.

-(void)setHeightAndWithToWindow:(NSArray*)heightWidth{
    int width = [(NSNumber*)[heightWidth objectAtIndex:0] intValue];
    int height = [(NSNumber*)[heightWidth objectAtIndex:1] intValue];
    NSRect rect = NSMakeRect(0, 0, width ,height);
    if([window frame].size.height != (rect.size.height - [self titleBarHeight]) ||
        [window frame].size.width != rect.size.width){ 
        [window setFrame:rect display:false animate:true];
    }
}

В чем может быть причина того, что строка заголовка становится белой и не перерисовывается? Можете ли вы указать строку заголовка, чтобы нарисовать себя в качестве обходного пути?

Спасибо

1 Ответ

0 голосов
/ 08 августа 2010

Похоже, вы сделали свой OpenGLView слишком большим.Когда вы отправляете [self titleBarHeight], что такое self?Этот код в подклассе окна или что-то еще?

...