Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c NSTextField在失去焦点后未正确刷新_Objective C_Cocoa_Nstextfield - Fatal编程技术网

Objective c NSTextField在失去焦点后未正确刷新

Objective c NSTextField在失去焦点后未正确刷新,objective-c,cocoa,nstextfield,Objective C,Cocoa,Nstextfield,我的程序的NSTextfield有点问题。 当我选择它们时,它们会获得聚焦环,如果禁用聚焦环,它们会变得更暗,但如果我取消选择它们,它们将无法正确地重新绘制 选择了第一个文本字段,并在该字段禁用未选择的聚焦环后保持其较暗的颜色。 第二个文本字段已选中,但保留部分聚焦环一旦未选中,其他两个文本字段上也会保留部分聚焦环。 第三个文本字段根本没有被选中 看起来边框没有正确刷新,在NSTextField上调用needDisplay似乎没有任何效果 我只使用NSTextfield no子类,从中我只将字体

我的程序的NSTextfield有点问题。 当我选择它们时,它们会获得聚焦环,如果禁用聚焦环,它们会变得更暗,但如果我取消选择它们,它们将无法正确地重新绘制

选择了第一个文本字段,并在该字段禁用未选择的聚焦环后保持其较暗的颜色。 第二个文本字段已选中,但保留部分聚焦环一旦未选中,其他两个文本字段上也会保留部分聚焦环。 第三个文本字段根本没有被选中

看起来边框没有正确刷新,在NSTextField上调用needDisplay似乎没有任何效果

我只使用NSTextfield no子类,从中我只将字体大小更改为Lucida Grande 11。我可能遗漏了一些明显的东西,但我无法找到这个问题的原因

-编辑- 我唯一与这些文本字段相关的代码是发送的操作,我只读取这些字段的内容。 我尝试添加一个新的NSTextfield,更改了属性以匹配这些有问题的TextField,它实际上工作得很好,只是我无法获得与以前相同的圆角边框。 Xcode以一种方式显示它们,但在构建和运行应用程序时,它与Xcode显示的内容不匹配

在执行这些第一个NSTextfields时,我对包含它们的视图使用了一些Xcode设置。 我将外观从继承的Aqua更改为Light Content,这改变了文本字段的外观,我认为我的视图现在混合了Aqua/Light Content外观

是否与该外观设置有关

谢谢,
托马斯

我做了一些测试,创建了一个新的空项目。 该缺陷很容易重现: -创建新的Cocoa应用程序 -在主窗口的视图中添加一些NSTextField -将窗口的外观更改为“灯光内容” -运行应用程序

所以我想这实际上是一个bug,与我所做的事情没有太大关系


谢谢你尝试帮助我。

上传一些你已经实现的代码。用更多信息编辑了原始帖子。我想我可以通过完全重建我的观点来解决这个问题,但我想知道问题的根源。谢谢。实际上,当将包含这些文本字段的视图的外观更改为轻内容时,问题再次出现,因此,要么我做错了什么,要么使用外观轻内容时NSTextfield有问题。