在NSScrollView(Mac OS X)中加载和显示图像时需要的特定行为

时间:2013-02-21 10:33:36

标签: objective-c nsview nsscrollview

我非常缺乏经验,而且对Objective-C很新,我想问一个有条不紊的问题。我想做的是:

  1. 加载用户提供的图像以在屏幕上显示。用户应该是 能够缩放。所以我最好使用NSScrollView来绘制 图片。我对行为有其他一些要求
  2. 加载图像时,它应该不适合NSScrollView 向两个方向伸展。
  3. 当用户现在更改NSScrollView的大小时(通过更改 窗口的大小)图像应适当调整大小。
  4. 如果用户在某一点缩放图像,则不应调整其大小 更改NSScrollView的大小时。如果图像被缩放 适应NSScrollView(意味着加载时)应该是 更改NSScrollView的大小时再次调整大小。我认为 这与Apple的预览应用程序中的行为相同。
  5. 我想这对于有经验的程序员来说很容易实现,但我有一些问题。这是我尝试过的。

    我通过

    加载图片
    [[NSImage alloc] initWithContentsOfFile:imagePathStr];
    
    单击按钮

    。我也可以通过在绘制之前更改图像的大小来显示它以适应(加载时)到NSScrollView。但我无法在调整大小或缩放时获得正确的行为(我使用NSScrollView biuld-in缩放功能)。有人可以提供某些需要执行的关键点列表来实现我想要的吗?或者做某人而不是看我的明确代码告诉我我做错了什么?

0 个答案:

没有答案