2012-05-05 6 views
0

私は[NSMenu popUpMenuPositioningItem:atLocation:inView:]をクリックするとNSButtonを持っています。メニューが適切な場所にポップアップしますが、一番上のNSMenuItemはマウスの上にマウスを置いたかのように常に青く強調表示されます。私はNSMenuItemのハイライトを制御する方法を見つけることができないようです。ポップアップNSMenu常に最初のNSMenuItemをハイライトします

スクリーンショットを見ると、マウスがまだNSButton上にマウスを置いていてもメニューが強調表示されていることがわかります。

enter image description here

私はこれをどのように修正することができますか?私はNSButtonをクリックしても何も強調表示されたくありません。

答えて

1

popUpMenuPositioningItem:atLocation:inView:の最初の引数にnilを渡すと、何も選択されません。

+0

これはトリックでした。ありがとう。 – Carter

1

自分でメニューをポップアップする代わりに、NSButtonをNSPopUpButtonに置き換え、プルダウンタイプに設定し、Borderedチェックボックスをオフにします(オンとオフを切り替えなければならない場合があります)。矢印のスタイルはNoneに設定されています(私はそれを残します)。

+0

このオプションは私に発生していたと私はそれが動作すると確信している間、それは本当に私の質問への答えではありません。 NSMenuのpopUpMenuPositioningItem:atLocation:inView:が動作する必要がある場合、NSPopupButtonを使用する必要はありません。 – Carter

関連する問題