Я пишу 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];
}