NSWindow
ツールバー付きの標準があります。ツールバーの項目の 1 つがカスタム ビューです。具体的には、NSTextField
. (より具体的には、これはタイマー アプリです。タイマーのコントロールとデジタル ディスプレイはすべてツールバー内にあり、その他のものはウィンドウのコンテンツ領域にあります。NSTextField
デジタル ディスプレイです。)
stringValue
通常、タイマーの ' ' プロパティを変更することで毎秒タイマーを更新するだけNSTextField
です。これにより、タイマー自体が更新されます。しかし、ライブ ウィンドウのサイズ変更中に、' stringValue
' プロパティを更新するコードが実行されていても (これは で確認しましたNSLog
)、NSTextField
ウィンドウのサイズ変更が完了するまで、 は再び描画されません。その間、コンテンツ領域内のものは問題なく更新されています。
に自分自身を描画するように指示するために私が知っているすべての方法を試しましたNSTextField
が、ライブのサイズ変更が完了するまでそれは起こりません。何か案は?明らかに、ツールバーがウィンドウの残りの部分と一緒にサイズ変更されるので、何らかの方法でそれが可能でなければなりませんsubviews
。私はsubclassing
何かでこれを一緒にハックできると思っていますが、私のココアフは、そうするための最も簡単で適切な方法を見つけるのに十分なほど強力ではありません.
前もって感謝します...
編集:私は解決策を見つけました-それは素晴らしいことではありませんが、今のところほとんど機能します. 以下の私のコメントにあります。