как остановить прокрутку NSScrollView при изменении размера? - PullRequest
1 голос
/ 16 августа 2010

Я пишу PDFViewer для сторонней библиотеки PDF.У меня есть подкласс NSScrollView и подкласс NSView.Проблема в том, что NSScrollView будет прокручиваться вверх и вниз, когда я изменяю размер окна.

вот соответствующий код:

всякий раз, когда размер окна изменяется, мой подкласс NSScrollView получает это сообщение:

-(void)handleFrameChange:(NSNotification*)notification {
    id * docView = [self documentView];
    [docView windowResized];
}

в моем docView, подкласс NSView, содержащий код для рисования pdf

- (void)windowResized;
{
    NSSize size = [[self superview] bounds].size;
    int width = (int) size.width;
    int height = (int) size.height;
    _pdfView->OnSize(width, height);

    double w = _pdfView->GetCanvasWidth();
    double h = _pdfView->GetCanvasHeight();
    [self setFrameSize:NSMakeSize(w, h)];

    //allocate buffer
    _buf.resize(width * height * 4, NULL);

    [self setNeedsDisplay:YES];
 }
...