如何从程序中更改NSImageView控件的大小?

时间:2010-06-15 18:36:33

标签: objective-c cocoa

以下代码行在名为outputImageView的NSImageView控件中的应用程序窗口中显示图像。我使用Interface Builder将NSImageView控件放到窗口上,然后将其绑定到outputImageView。如何在程序中更改NSImageView控件的大小,使其与我显示的实际图像的大小相匹配(可能会定期更改)?如果我想更改图像的锚点(即居中,左边缘,右下角或其他什么?请提前感谢!

[outputImageView setImage: outputImage]; 

2 个答案:

答案 0 :(得分:2)

与任何其他NSView一样,请使用-setFrame:

[outputImageView setFrame:NSMakeRect(x, y, w, h)]

坐标在包含视图的系统中指定。

如果您只需更改尺寸(仅保留原点),则可以使用-setFrameSize:

[outputImageView setFrameSize:NSMakeSize(w, h)]

对于对齐,请使用NSImageView的-setImageAlignment:,就像jshier写的那样。

答案 1 :(得分:1)

我不知道如何以编程方式更改NSImageView的大小,但您可以使用- setImageAlignment:来确定图像在帧中的位置。另外,如果您想要更灵活的图像视图,可能需要查看IKImageView