私はMacOSのを(携帯電話ではない)を標的、XCodeの4.1を使用して客観Cで簡単なプロジェクトを書いていると、次のような問題に遭遇している:株式の上に座って、私のボタン(NSButtonのCocoa:クリックするとNSButtonが消えます。まだアクティブしかし
ワンNSView)をクリックすると、断続的に消えます。それはもはや描かれず、その背景に背景が表示されます。これは意図された動作ではなく、たまに1回だけ発生します(たぶん20回のクリックのうちの1回)。特に奇妙なのは、ボタンがまだアクティブであることです。ユーザーは、ボタンを表示する場所をクリックすることができ、正しいアクションが実行され、ボタンが再び描画されます。ウィンドウのサイズを変更すると、ボタンが再び描画されます。
- がクリック処理の最後にSetNeedsDisplay呼び出しを追加します。
私が働いていたいずれも、以下の修正を試みてきました。
- 無関係なアニメーションループにSetNeedsDisplay呼び出しを追加します。これは貧弱な選択であり、ボタンがちらつきを引き起こし、ボタンが使用されたときに最終的にクラッシュに至った。いくつかの同期では、これは回避策としてハック可能性がありますが、根本的な問題には対処できません。
何が起こっているか、どのように対処していいですか?ありがとう!
編集:これはどうして起こっているのか分かりませんが、回避策を見つけました。消えているボタンのすぐ下に重複ボタンを作成する。描画されていない場合でも、クリックはトップボタンに移動します。確かに、しかし効果的なKludge。
イメージボタンですか?別のイメージがありますか?どのタイプのボタンですか? –
ちょうど標準のNSButton - 私は丸いrectまたはプッシュを使用したかどうか覚えていないことができます。画像は関連付けられていません。 – tsellon
あなたはどのような方法でもカスタマイズしないと言っています。クリック処理機能を投稿できますか? –