Xcodeを使用して、.xibで選択し、Xcodeのエディターメニューに移動して> scrollViewに埋め込むことで、NSScrollViewにしたNSImageViewを持つアプリケーションを作成します(私は思う)。
NSScrollView に開いているウィンドウよりも大きい画像があります。スクロールバーを使用してスクロールでき、メソッドでautoscroll:
機能をオンにすることもできます。mouseDragged:
を使用して、画面の端に触れずに画像を簡単にパンできるようにしたいと思いますmouseDragged:
。これまでのところ、mouseDragged:
私のpanning.m(NSImageViewのサブクラス)のコードは次のとおりです。
-(void)mouseDragged:(NSEvent *)theEvent{
NSPoint p = [theEvent locationInWindow];
[self scrollRectToVisible:NSMakeRect(p.x - self.visibleRect.origin.x, p.y - self.visibleRect.origin.y, self.visibleRect.size.width, self.visibleRect.size.height)];
[self autoscroll:theEvent];
}
これはある程度機能しますが、多くのジッターがあります。たぶん、境界を制限していないからですか?
私は正しい軌道に乗っているのか、それともより良い/より効率的な方法があるのか 疑問に思っていました.
どんな助けでも大歓迎です。
乾杯。