0

ユーザーがメニュー項目をクリックすると、ユーザーがテキスト(NSTextFieldおよびNSTextView)を入力できるウィンドウを開く、ステータスバー(ドックアイコンまたはメニューバーなし)のメニューのみで構成されるプログラムを作成したいと思います。

Info.plistファイルで「Applicationisbackgroundonly」プロパティをYESに設定することによってのみプログラムのバックグラウンドを作成できますが、これを実行してウィンドウを表示すると、最初にウィンドウが常に他のウィンドウの後ろに表示され、次に次のことができます。テキストを入力しないでください(テキストは最後にフォーカスされたものに移動します-通常はXcodeのソースファイルです!)

これは、フィールドが有効になっていないほど単純なことではありません。「backgroundonly」プロパティをNOに変更するだけで問題は解決しますが、不要なドックアイコンとメニューバーが表示されます。

私がやろうとしていることは可能ですか、それともアプリケーションがテキストを受信できないことを意味するバックグラウンドのみのモードについて何かありますか?

可能であれば、これを修正するために何をする必要がありますか?

4

1 に答える 1

2

のドキュメントLSBackgroundOnlyから:

このキーを使用して、顔のない背景アプリを作成できます。アプリがウィンドウサーバーに接続する高レベルのフレームワークを使用しているが、ユーザーに表示されることを意図していない場合にも、このキーを使用する必要があります。

したがって、「背景のみ」とは、背景のみを意味します。

必要なキーはですLSUIElement。Xcodeは、これを「アプリケーションはエージェント(UIElement)」と表現しています。

私は個人的に、キーの意味のいくつかの説明を表示するというXcodeのデフォルトの動作に耐えられません。「生のキー/値を表示」をオンにすることをお勧めします。次に、Xcodeは辞書で使用されている実際のキーを表示します。

于 2013-02-12T06:56:32.450 に答える