它是可拖动的,并有一个背景图像.
然后我创建了一个NSWindow的子类并覆盖了它的initWithContentRect:styleMask:backing:defer:方法,并为其添加了一个NSImageVIEw:
- (ID)initWithContentRect:(NSRect)contentRect styleMask:(NSUInteger)aStyle backing:(NSbackingStoreType)bufferingType defer:(BOol)flag{ contentRect.size = CGSizeMake(287,287); self = [super initWithContentRect:contentRect styleMask:aStyle backing:bufferingType defer:flag]; if (self) { [self setMovableByWindowBackground:YES]; [self setopaque:NO]; [self setBackgroundcolor:[NScolor colorWithCalibrateDWhite:1.0 Alpha:0.5]]; NSImageVIEw *imageVIEw = [[NSImageVIEw alloc] initWithFrame:(CGRect){CGPointZero,contentRect.size}]; imageVIEw.image = [NSImage imagenamed:@"MiniWindow.png"]; [self.contentVIEw addSubvIEw:imageVIEw]; } return self;}
但是在我将NSImageVIEw添加到窗口的contentVIEw之后,窗口变得不可分割.
如何使窗口再次变得可拖动?
最好的祝福
解决方法 创建NSImageVIEw的子类并覆盖mouseDownCanMoveWindow方法:- (BOol)mouseDownCanMoveWindow{ return YES;}总结
以上是内存溢出为你收集整理的macos – 如何在其contentView上使用NSImageView拖动NSWindow?全部内容,希望文章能够帮你解决macos – 如何在其contentView上使用NSImageView拖动NSWindow?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)