Я розробляю настільний додаток з Java Swing для мого особистого використання. Мені потрібні прекрасні Look and Feel для мого застосування. Як я можу це зробити за допомогою Java або стороннього API?
Я розробляю настільний додаток з Java Swing для мого особистого використання. Мені потрібні прекрасні Look and Feel для мого застосування. Як я можу це зробити за допомогою Java або стороннього API?
Відповіді:
Існує багато можливостей для LaFs:
java -Dswing.defaultlaf=javax.swing.plaf.nimbus.NimbusLookAndFeel -jar MyApp.jar
-Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel
параметр до виклику Java.
Ви можете спробувати L&F, який я розробляю - WebLaF
Він поєднує три частини, необхідні для успішної розробки інтерфейсу:
Бінарні файли: https://github.com/mgarin/weblaf/releases
Джерело: https://github.com/mgarin/weblaf
Ліцензії: GPLv3 та Commercial
Кілька прикладів, що показують, як виглядають деякі компоненти WebLaF:
Основна причина, чому я почав із абсолютно нового L&F, полягає в тому, що у більшості існуючих L&F не вистачає гнучкості - ви не можете змінити їх стиль у більшості випадків (ви можете змінити лише декілька кольорів та включити / вимкнути деякі елементи інтерфейсу в кращому випадку) та / або є лише незручні способи зробити це. Це ще гірше, якщо мова йде про індивідуальні / сторонні стилі компоненти - вони не схожі на інші компоненти, стильовані певним L&F або навіть зовсім іншими - що робить вашу програму непрофесійною та неприємною.
Моя мета - забезпечити повністю настроюваний L&F з пакетом додаткових широко відомих і корисних компонентів (наприклад: вибір дату, таблиця дерев, панелі документування та документи та багато інших) та додаткові корисні менеджери та утиліти, що зменшить кількість коду, необхідного для швидкої інтеграції WebLaF у вашу програму та допомоги у створенні дивовижних інтерфейсів за допомогою Swing.
Ви також можете використовувати JTattoo ( http://www.jtattoo.net/ ), у ньому є кілька класних тем, які можна використовувати.
Просто скачайте банку та імпортуйте її на свій класний шлях або додайте її як залежність від Maven:
<dependency>
<groupId>com.jtattoo</groupId>
<artifactId>JTattoo</artifactId>
<version>1.6.11</version>
</dependency>
Ось список цікавих тем, які вони мають у своєму розпорядженні:
З повагою
Heres код , який створює діалог , який дозволяє користувачеві додатки , щоб змінити зовнішній вигляд і стиль , заснований на користувальницьких системах. Крім того, якщо ви можете зберігати шуканий Look And Feel'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);
}
}
}
}
}