我有一个NSWindow
带有工具栏的标准。工具栏的一项是自定义视图 - 具体来说,一个NSTextField
. (更具体地说,它是一个计时器应用程序——计时器的控件和数字显示都在工具栏中,其他内容在窗口的内容区域中。这NSTextField
是数字显示。)
stringValue
通常,我只是通过更改 ' ' 的属性每秒更新一次计时器NSTextField
,这会导致它自行更新。但是在实时窗口调整大小期间,即使更新 ' stringValue
' 属性的代码正在运行(我已经用 验证过NSLog
),NSTextField
在窗口大小调整完成之前不会再次绘制自身。同时,内容区域内的东西正在自我更新。
我已经尝试了所有我知道的方法来告诉它NSTextField
自己绘制,但它只是拒绝发生,直到实时调整大小完成。有任何想法吗?显然它必须以某种方式成为可能,因为工具栏与窗口的其余部分一起调整大小 - 所以你认为可以强制它在subviews
移动它们时重新绘制一个或多个。我假设我可以通过subclassing
一些东西来破解它,但是我的 Cocoa-fu 还不够强大,无法找出最简单/最合适的方法。
提前致谢...
编辑:我想出了一个解决方案——它不是很好,但它现在大部分都有效。它在我下面的评论中。