gpt4 book ai didi

cocoa - 如何控制模式对话框的 Tab 键顺序(键 View 循环)?运行模式窗口 : ignores nextKeyView

转载 作者:行者123 更新时间:2023-12-03 16:15:05 26 4
gpt4 key购买 nike

除非我完全困惑,否则 runModalForWindow: 似乎会忽略 NSPanel 中字段的 nextKeyView 属性。

#define RUN_MODAL 1
#if RUN_MODAL
[ NSApp runModalForWindow: self.view.window ] ;
#else
[ self.view.window makeKeyAndOrderFront: nil ] ;
#endif

我已经尝试过这两种方法,并且在使用正常的 makeKeyAndOrderFront: 时肯定会得到正确的 Tab 键顺序,而在使用 runModalForWindow: 时则不会。
我错过了什么吗?或者有人知道如何使其在运行模式时工作?

根据建议,我尝试了以下方法并得到了相同的结果:

#define RUN_MODAL 1
#if RUN_MODAL
#define USE_BEGINSHEET 1
#if USE_BEGINSHEET
[ NSApp beginSheet: self.view.window
modalForWindow: nil
modalDelegate: nil
didEndSelector: NULL
contextInfo: NULL ];
#else
[ NSApp runModalForWindow: self.view.window ] ;
#endif
#else
[ self.view.window makeKeyAndOrderFront: nil ] ;
#endif

请注意,“文档窗口”为nil,因为这是一个大多数背景无 UI 的应用程序,只是有时会弹出登录对话框。

最佳答案

事实证明,这是界面生成器中属性检查器窗口部分中的自动重新计算 View 循环复选框。它默认处于选中状态,但在模式对话框中,如果动态启用/禁用任何字段(例如通过绑定(bind)),则重新计算将按“几何”(从左到右、从上到下)顺序进行。

我相信以编程方式对应于 NSWindow(在我的例子中是 NSPanel)的 autorecalculatesKeyViewLoop 属性。

关于cocoa - 如何控制模式对话框的 Tab 键顺序(键 View 循环)?运行模式窗口 : ignores nextKeyView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15936466/

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