objective-c – 当“标题栏”设置为不显示时,为什么我无法在NSPanel中获得焦点?

objective-c – 当“标题栏”设置为不显示时,为什么我无法在NSPanel中获得焦点?,第1张

概述如果我在 Xcode 4.1中创建项目,并将MainMenu.xib设置为具有两个NSPanel,并在两个面板中放置NSTextField,如果我将其中一个NSPanel设置为不显示标题栏”,则该面板中的文本字段不能点击或给予焦点. 为什么?? 没有标题栏的窗口(或面板)不能成为键,因此无法获得焦点.你必须将它子类化并覆盖它的 – (BOOL)canBecomeKey方法,如下所示: @inte 如果我在 Xcode 4.1中创建项目,并将MainMenu.xib设置为具有两个NSPanel,并在两个面板中放置NSTextFIEld,如果我将其中一个NSPanel设置为不显示“标题栏”,则该面板中的文本字段不能点击或给予焦点.

为什么??

解决方法 没有标题栏的窗口(或面板)不能成为键,因此无法获得焦点.你必须将它子类化并覆盖它的 – (BOol)canBecomeKey方法,如下所示:

@interface MyPanel : NSPanel@end@implementation MyPanel- (BOol)canBecomeKeyWindow {    return YES;}@end
总结

以上是内存溢出为你收集整理的objective-c – 当“标题栏”设置为不显示时,为什么我无法在NSPanel中获得焦点?全部内容,希望文章能够帮你解决objective-c – 当“标题栏”设置为不显示时,为什么我无法在NSPanel中获得焦点?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1017341.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存