3

これはスタック オーバーフローに関する私の最初の投稿であり、システム トレイ アプリケーションを作成するオプションについて疑問に思っています。アプリケーションは、動作中にシステム トレイからプライマリで実行され、クリックするとウィンドウに表示される可能性があります。また、ウィンドウを表示するには、グローバル キーストローク トラッキングをサポートする必要があります。

これを行うには多くの方法があると確信しているので、私が利用できるオプションに興味があります。C++ の経験はありますが、Java に最も精通しています。他の言語に明確な利点がある場合は、喜んで調査しますが、私が知っていることを何らかの方法で使用できるとよいでしょう。

ありがとうございました

4

3 に答える 3

7

Java 6 には、システム トレイを使用するアプリケーションの作成を可能にする新しい機能があります。

New System Tray Functionality in Java SE 6の記事では詳細が説明されており、いくつかのサンプル コードも提供されています。

新しく追加されSystemTrayたパッケージTrayIconのクラスをjava.awt使用して、システム トレイにアイコンを追加できます。アイコンはマウス クリックに応答し、ポップアップ メニューも使用できます。ただし、この新しい機能は AWT の一部であるため、Swing コンポーネントとの統合にはあまり適していません。

SystemTrayJava 6 のおよびTrayIconクラスを使用して作成された、システム トレイに表示される小さな時計の例を次に示します。

Java のシステム トレイ クロック アプリケーション
(出典: coobird.net )

于 2009-06-23T03:05:58.127 に答える
1

普通の古い Winforms が私の票を獲得します。

Java に精通している場合は、マネージ言語の 1 つを使用して .NET で簡単なトレイ アプリを作成するのはほとんど難しくありません。

トレイ アプリを作成する正しい方法に関するアドバイスを次に示します

于 2009-06-23T03:05:17.003 に答える
0

ここでは、マネージド アプリケーションと Java に注意してください。トレイ アプリケーションは常に実行されます。そのため、それらが適切に記述されていないと、十分なシステム リソースを使用して他のことを妨害する可能性があります。

マネージ コードや Java 全般に問題はありませんが、マネージド コードや Java アプリをメモリ、I/O、および CPU 時間で倹約することはより困難な場合があります。

私は Windows パフォーマンス チームの開発マネージャーとしてこれを言っています。はい、一部は Windows または MSFT アプリケーションです。

ユーザーが必要とするときに、より豊富なプロセスを起動する、非常に小さな軽量のトレイ アプリを作成する方が良い方法かもしれません。低レベルの Win32 API のすぐ上に、簡単な C++ で try アプリを作成できます。Win32 API を直接使用したくない場合は、Windows テンプレート ライブラリを使用できます。

于 2009-06-23T03:13:59.153 に答える