gpt4 book ai didi

Cocoa - 模态窗口,背后有动画 NSOpenGLView

转载 作者:行者123 更新时间:2023-12-03 18:07:07 27 4
gpt4 key购买 nike

我有一个 NSWindow 子类 (GameWindow),其中包含一个 NSOpenGLView 子类 (GameView)。

应用程序是窗口化的(不会全屏显示)。

GameView 中的 OpenGL 动画由计时器每秒触发约 30 次。

出于演示原因,无论应用程序中发生了什么,GameView 动画都必须继续。它应该停止的唯一时间是发生 fatal error 的情况。

当 GameWindow 中的动画继续时,我需要呈现各种“模态”Cocoa 窗口(例如选择新游戏、确认退出等)。其中一些可能是工作表,但主要的需要显示为独立窗口(包含 WebView)。

我的问题:如何显示这些“对话框”窗口,以便我的应用程序计时器继续触发,我的动画继续,但用户对 GameWindow 中 GameView 的输入被阻止,直到用户关闭“对话框”窗口?

(这个时候我需要支持Tiger + Leopard)。

最佳答案

您尝试过常规的工作表/对话框技术吗?他们应该可以很好地应对这种情况。计时器被安排为运行循环的一部分,当您有模式表或窗口时,它不会停止,因此它应该能够在事件被阻止时继续在后台渲染。

[NSApp beginSheet:sheetWindow modalForWindow:mainWindow modalDelegate:nil didEndSelector:NULL contextInfo:nil];

(除非需要填写您自己的委托(delegate)和结束选择器。)

关于Cocoa - 模态窗口,背后有动画 NSOpenGLView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/593550/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com