2012-03-25 6 views
0

コードやインタフェースビルダーを使ってtextfield/textfieldcell ...の編集を無効にするとうまくいきます。編集可能なCocoaテキストフィールドセルがシャドウを描画しないのはなぜですか?

enter image description here(わずかな影に気づく)

しかし、私はそれが編集可能([セルsetEditable:YES])を作るたら影が完全に消失:

enter image description here

私は影を描いてみました1つは、NSBackgroundStyleRaisedを設定し、2つは、手動で影を作成するために- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlViewを上書きします。セルを一度操作すると、シャドウストップを描画するスタイルと方法の両方が編集可能になります。 (上の写真はデモ用のものに過ぎません)

誰かが私にその理由を教えてもらえますか?そして私はこの問題をどのように乗り越えることができますか?

+0

興味深いことに、それがiOSの同じ問題の一部であるのだろうか、私の質問を参照してください:http://stackoverflow.com/questions/7444473/uitextfield-text-colour-goes-invisible-when-editing-is-this -a-bug。おそらく、テキストフィールドが編集可能になると、派手な描画が無効になるのでしょうか? – jrturton

答えて

0

は、私は考え出したと思う理由は、少なくとも部分的に -

私は影を設定して、編集するときので、field editorも描画を行っている(そしてそれは、上記の通過つもりはない- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlViewを使用していたのでメソッド)に影が適用されません。

これについての確認はうまくいくかもしれませんが、今は影が描画されていないと仮定します。

関連する問題