我正在使用Interface Builder为Mac上的OpenGL Simulation开发界面。所有OpenGL的东西都是用C ++编写的(我非常清楚)。不幸的是我不知道Objective-C。
基本上,我有几个NSTextField显示屏幕上选择的对象的信息。使用这些文本字段,用户可以在屏幕上操作对象,然后有一个保存按钮和一个恢复按钮(保存新值或恢复原始值)
我把这一切都搞定了。我的问题是,当我将数据输入NSTextField时,窗口的“焦点”似乎仍保留在NSTextField上(蓝色边框保留在它周围)。
我使用键盘与NSOpenGLView中的项目进行交互,当我点击“保存”或“恢复”按钮时,我需要将焦点传递回NSOpenGLView。
对不起,如果这是一个非常简单的问题
由于
大卫
答案 0 :(得分:3)
你是否尝试过使用NSWindow makeFirstResponder方法让你的NSOpenGLView成为第一个响应者?
答案 1 :(得分:2)
只是设法让它发挥作用。
我不得不添加一行:
[[NSApp keyWindow] makeFirstResponder:MyOpenGLView];
单击我的任一按钮时,到被调用函数的末尾。
(感谢Julio指出我正确的方向)