私はJava Swingを使用して個人用にデスクトップアプリケーションを開発しています。アプリケーションには美しいLook&Feelが必要です。 JavaまたはサードパーティのAPIを使用してどうすればよいですか?
LaFには多くの可能性があります。
私が開発しているL&Fを試すことができます-WebLaF
UI開発を成功させるために必要な3つの部分を組み合わせています。
バイナリ:https://github.com/mgarin/weblaf/releases
出典:https://github.com/mgarin/weblaf
ライセンス:GPLv and Commercial
WebLaFコンポーネントの一部がどのように見えるかを示すいくつかの例:
私がまったく新しいL&Fで始めた主な理由は、既存のL&Fのほとんどが柔軟性に欠けているためです-ほとんどの場合、スタイルを変更できません(いくつかの色を変更し、いくつかのUI要素をオン/オフすることができます) /またはそれを行うには不便な方法しかありません。カスタム/サードパーティのコンポーネントスタイリングに関しては、さらに悪化します。特定のL&Fによってスタイル設定された他のコンポーネントとはまったく似ていないか、まったく異なります。
私の目標は、完全にカスタマイズ可能なL&Fに、広く知られている有用な追加コンポーネント(日付選択、ツリーテーブル、ドッキング可能およびドキュメントペイン、その他多数)のパックと、追加の有用なマネージャーとユーティリティを提供することです。 WebLaFをアプリケーションにすばやく統合し、Swingを使用して素晴らしいUIを作成するのに役立つコードの量。
JTattoo( http://www.jtattoo.net/ )を使用することもできます。これには、使用できるいくつかのクールなテーマがあります。
Jarをダウンロードしてクラスパスにインポートするか、Maven依存関係として追加します。
<dependency>
<groupId>com.jtattoo</groupId>
<artifactId>JTattoo</artifactId>
<version>1.6.11</version>
</dependency>
以下に、利用可能ないくつかのクールなテーマのリストを示します。
よろしく
アプリケーションのユーザーがser'sシステムに基づいてルックアンドフィールを変更できるようにするダイアログを作成するコードを次に示します。あるいは、必要なルックアンドフィールをアプリケーションに保存できる場合、それらは「ポータブル」である可能性があります。これは望ましい結果です。
public void changeLookAndFeel() {
List<String> lookAndFeelsDisplay = new ArrayList<>();
List<String> lookAndFeelsRealNames = new ArrayList<>();
for (LookAndFeelInfo each : UIManager.getInstalledLookAndFeels()) {
lookAndFeelsDisplay.add(each.getName());
lookAndFeelsRealNames.add(each.getClassName());
}
String changeLook = (String) JOptionPane.showInputDialog(this, "Choose Look and Feel Here:", "Select Look and Feel", JOptionPane.QUESTION_MESSAGE, null, lookAndFeelsDisplay.toArray(), null);
if (changeLook != null) {
for (int i = 0; i < lookAndFeelsDisplay.size(); i++) {
if (changeLook.equals(lookAndFeelsDisplay.get(i))) {
try {
UIManager.setLookAndFeel(lookAndFeelsRealNames.get(i));
break;
}
catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException ex) {
err.println(ex);
ex.printStackTrace(System.err);
}
}
}
}
}