当我在NSSplitView中放置NSOpenglView时,拖动拆分器时会出现问题.
openGLView和SplitView异步调整大小.我在苹果邮件列表线程 http://developer.apple.com/mac/library/samplecode/GLChildWindowDemo/Introduction/Intro.html中找到了一个解决方案
openGLView和SplitView异步调整大小.我在苹果邮件列表线程 http://developer.apple.com/mac/library/samplecode/GLChildWindowDemo/Introduction/Intro.html中找到了一个解决方案
解决方法
我找到了答案.
正确的方法是在MYWindow中实施thees方法:NSWindow
BOOL needsEnableUpdate; -(void)disableUpdatesUntilFlush { if(!needsEnableUpdate) NSDisableScreenUpdates(); needsEnableUpdate = YES; } -(void)flushWindow { [super flushWindow]; if(needsEnableUpdate) { needsEnableUpdate = NO; NSEnableScreenUpdates(); } }
并在NSSplitterView委托实现
#pragma mark NSSplitView Delegate -(void)splitViewWillResizeSubviews:(NSNotification *)notification { [window disableUpdatesUntilFlush]; }
我的问题是我试图使用碳调用:
DisableScreenUpdates(); EnableScreenUpdates();
而不是可可的:
NSDisableScreenUpdates(); NSEnableScreenUpdates();