Подтвердить что ты не робот

Contentize и contentOffset в представлении NSScroll

Я переношу приложение с Ipad на Mac. (Я знаю, что это звучит странно)

Я застрял в NSScrollview. Пожалуйста, направляйте мне контент, эквивалент contentOffset в NSScrollview.

4b9b3361

Ответ 1

UIScrollView* uiScroll;
uiScroll.contentSize;
uiScroll.contentOffset;
uiScroll.contentSize = CGSizeMake(w,h);
uiScroll.contentOffset = CGPointMake(x,y);

=

NSScrollView* nsScroll;
nsScroll.documentView.size;
nsScroll.documentVisibleRect.origin;
nsScroll.documentView.frameSize = NSMakeSize(w,h);
[nsScroll.documentView scrollPoint:NSMakePoint(x,y)];

Изменить: модернизирован синтаксис

Ответ 2

Все, что вам нужно знать о NSScrollView, изложено в Руководстве по программированию прокрутки для Cocoa, представленном в документации.

Несмотря на то, что нет прямого эквивалента, UIScrollView contentSize можно сравнить с размером NSScrollView documentView, который является прокручиваемым контентом, представленным как NSView to NSScrollView с setDocumentView:.

setContentOffset: можно сравнить с NSView scrollPoint:, который использует NSPoint для указания смещения documentView в пределах NSScrollView.

См. документацию для разработки и примеры кода.