2015-10-03 64 views
2

我正在构建我的第一个应用程序,其中有一个用于拖放文件的自定义NSView。我已经注册了拖动操作,但仍然需要设计拖放区域,因此用户确实知道他们可以在其上放置文件。如何在自定义NSView中绘制“拖放”区域

我想该地区是这个样子:
How do I get my drag and drop area to look like this?

我在我的自定义NSView类的drawRect功能尝试了一些不同的东西出来,但到目前为止,我还没有甚至能够画出虚线边框。

是否可以在NSView内画出这样的内容,如果是这样的话:我该怎么做?或者,我是否应该创建一张我想要如何拖放区域的图像,然后将其插入到视图中?
在此先感谢。

+0

使用图片。如果你想要一个快速的解决方案使用PaintCode(即使与演示,你应该达到你想要的结果) –

+0

是。照片是我最终做到的。尽管感谢您的评论。 – Anders

回答

1

如果任何人有过这个问题,我解决了这个简单地插入图像到NSView这样的方式:

- (void)drawRect:(NSRect)dirtyRect { 
    NSImage *image = [NSImage imageNamed:@"Dropzone"]; 
    [image drawInRect:dirtyRect fromRect:NSZeroRect operation:NSCompositeSourceOver fraction:1]; 
} 

似乎到目前为止是最简单的方法。尤其是如果你或你认识的人知道如何在Photoshop或其他方面做些什么。

该解决方案还会缩放您的图像以适应其插入视图的大小。