如何解决面板在 Nib Load 上可见,但无法从工具栏单击可见
我在 Xcode 中有一个 MacOS Objective C 项目,其中包含两个 Nib 文件。在第二个 Nib 中,我有一个 NSPanel 对象。我为它创建了一个插座,如下所示:
@property (weak) IBOutlet NSPanel *Settings;
如果我在身份检查器中选中“启动时可见”,它会在启动时出现。但是,如果我取消选中此选项并尝试使其从工具栏项目中可见,请使用工具栏中的操作单击,如下所示:
- (IBAction)SettingsClick:(id)sender {
[_Settings setIsVisible:true];}
面板不可见。我也试过代码
[self.Settings makeKeyAndOrderFront: self];
在操作中,但这也不会导致面板变得可见。
如果我在启动时使面板可见,关闭它也会关闭第二个 Nib 定义的窗口。
解决方法
如果改变第二个笔尖的显示方式
[[self loadWithNibNamed:@"ImageSplit" owner:self ] display];
到
[[self loadWithNibNamed:@"ImageSplit" owner:self ] setNeedsDisplay:true];
然后是工具箱项操作
[self.Settings makeKeyAndOrderFront: self];
第一次单击工具箱项时显示“设置”面板“确定”。但是,如果第二个 Nib 关闭并重新打开,则单击工具栏项不会显示“设置”面板。此外,面板并不总是出现 - 有时需要一个 Clean Build 文件夹,有时不止一次,所以问题仍未解决。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。