3

Windowsのさまざまなバージョンで、さまざまな目的で、さまざまなサイズのアイコンが使用されていることに気づきました。たとえば、ウィンドウのタイトルバーのアイコンは、特にWindows 7では、プログラムのタスクバーのアイコンよりもはるかに小さくなっています。

Windowsアプリケーションのアイコンに含める必要のあるアイコンサイズを見つけましたか?Windowsで使用されるアイコンサイズの非常に便利なリストですが、Windowsが特定のタスクに必要なサイズを選択できるようにそれらを提供する方法がわかりません。

この件に関して、誰かからのアドバイスや助けをいただければ幸いです。自分がどれだけはっきりしているのかわからないので、何かはっきりさせてほしいという方は、遠慮なくお問い合わせください。

また、これがMacに当てはまるかどうか、またはOS Xに適用するようにコードをどのように適応させることができるかを誰かが知っている場合は、それも教えてください。

更新:これは私のJavaSwingアプリケーション用です

4

2 に答える 2

10

を参照してくださいWindow.setIconImages(List)。プラットフォームの機能に応じて、さまざまなサイズのいくつかの画像の1つがウィンドウのアイコンとして使用される場合があります。ファイルブラウザのGUIスレッドに例があります。この画像は、GUIに使用される小さなアイコンを示しています。大きなアイコンは、ウィンドウ間でAltキーを押したときに表示されます。

画像が正方形でない場合、Windowsは画像をパディングします。

Java Web Startは、デスクトップショートカットおよびメニュー項目で使用するための複数のサイズのアイコンに対して同様のオプションを提供します。


Re:名前の付いた画像:

  1. fb-icon-16x16.png fm-icon-16x16.png
  2. fb-icon-32x32.png fm-icon-32x32.png

..ファイル名などは関係ありません。Windowsは画像サイズに基づいてアイコンを選択するだけですか?

はい、ファイル名は開発者の利益のためにサイズ情報を含むように選択されました。画像を次のように呼ぶ場合があります。

  • icon-small.png
  • icon-medium.png

..そしてそれは同じように動作します。JREは、ロード後に測定された画像の実際のサイズに基づいて選択を行います。ただし-16x16、アイコンの画像名になどを追加して明示的にすることを強くお勧めします。「小さなアイコン」のサイズは、時間の経過やデバイスによって異なります。

複数のサイズを提供しないとどうなりますか?

JREまたはシステムは、開発者の制御の及ばないアルゴリズムに従って1つの画像をスケーリングします。たとえば、上記のように。

画像が長方形でない場合、Windowsは画像をパディングします。

再生中のトラックに適用されるトラックまたはアルバムアートをピックアップしようとするDukeBoxプレーヤーがあります。サウンドトレースの上に画像を表示するだけでなく、(単一の)フレームアイコンとして設定します。ウィンドウは(少なくとも)サイズに合わせて拡大縮小され、正方形以外の画像には透明度が埋め込まれます。Windowsは、部分的に透明なPNGをaplombで処理します。

OTOH、AFAIUOSXはフレームアイコンを表示しません。設計上の決定による。その結果、アイコンがまったく表示されないかどうかはわかりません。Macのアドバイスが必要です。より良い情報のための第一人者。その上で。

システムはアイコンのスケーリング方法について独自の(必ずしも最適ではない)決定を行うため、可能な限りチャンスを少なくし、各プラットフォームに適切なサイズのアイコンを提供するようにするのが最善です。それらが一般的なサイズまたは3である場合、あなたは幸運です。

参照:Swing Q&Aで使用されるフレームアイコンのサイズ。

于 2012-05-12T16:04:25.033 に答える
2

SWTを使用してJavaアプリケーションを開発する場合は、シェルに画像配列を設定できます。

于 2012-05-12T15:59:18.267 に答える