web-dev-qa-db-fra.com

Comment rendre les programmes Java GUI plus modernes?

J'utilise Dr Java sur Ubuntu 14.04 et les composants de l'interface graphique semblent tous très datés par rapport à ceux de Mac ou Windows. Existe-t-il un moyen de mettre à jour cela ou tous les composants Java sous Linux sont-ils un peu vieux?

J'utilise le compilateur JDK 8.0 d'Oracle si cela aide.

Voici quelques boutons dans Ubunt

2
Mike

Voir: https://stackoverflow.com/questions/209731/how-do-i-force-get-to-use-gtklookandfeel-in-Java-on-kde

Vous pouvez indiquer à la machine virtuelle Java d’utiliser un "aspect différent" (LAF). Un certain nombre de fichiers LAF livrés sont disponibles pour la machine virtuelle, et quelques-uns sont spécifiques à certains systèmes d'exploitation (c'est-à-dire que le fichier LAF Windows est uniquement disponible sur Windows.)

Je suppose que vous voyez le LAF "Metal", ce qui est assez moche (et se trouve être la valeur par défaut si le développeur ne spécifie pas un LAF différent pour une application graphique). Vous pouvez essayer de forcer GTF (ou Nimbus, si vous avez la bonne version du LAF) LAF comme suggéré dans ce lien. Ce sera quelque chose comme ça:

Java -Dswing.defaultlaf=com.Sun.Java.swing.plaf.gtk.GTKLookAndFeel YourAppName

Vous devrez remplacer le nom de l'application par YourAppName. Ou vous devrez peut-être modifier un fichier si votre application est en cours de démarrage via un lanceur Java. L'idée est que vous souhaitiez ajouter ce Java define ("-Dswing.defaultlaf=...") aux arguments VM d'une manière ou d'une autre.

Puisque vous utilisez la machine virtuelle Oracle Java 8, vous voudrez peut-être même essayer la nouvelle version de Nice javax.swing.plaf.nimbus.NimbusLookAndFeel.

Refs: Comment définir l'apparence

2
user459652

J'espère que vous avez besoin de Java pour utiliser l'apparence de GTK. Comme jdv répondu, vous pouvez le définir à l'exécution ou pour toutes les applications Java swing en utilisant la technique suivante:

Étape 1: Dans Java 8, ce fichier n'est pas disponible par défaut. Donc, la commande donnée va en créer une nouvelle. Selon votre version Java, modifiez le chemin.

gksu gedit /usr/lib/jvm/jdk1.8.0_60/jre/lib/swing.properties

Étape 2: Ajoutez la ligne suivante dans le fichier et enregistrez le fichier.

swing.defaultlaf=com.Sun.Java.swing.plaf.gtk.GTKLookAndFeel

Maintenant, lancez l'application, vous obtiendrez un allok natif et sentirez pour toutes les applications swing.

Bien que cela ne soit pas nécessaire pour votre application Calculatrice, l'activation de Global Menu améliorera l'apparence des applications Java. Pour activer le menu global:

Étape 1: Installez Jayatana à l’aide du jeu de commandes suivant:

À partir de Ubuntu 15.04, il est installé par défaut.

Sudo add-apt-repository ppa:danjaredg/jayatana
Sudo apt-get update
Sudo apt-get install jayatana

Étape 2: Désactivez la configuration globale de Jayatana.

Sudo rm /usr/share/upstart/sessions/jayatana.conf

Étape 3: Lorsque vous exécutez une application Java, utilisez la commande suivante.

Java -jar -javaagent:/usr/share/Java/jayatanaag.jar <file-name>

Crédits à:

Comment puis-je obtenir une application Java pour utiliser le thème GTK +?

Prise en charge du menu global pour Java Applications sous Ubunt

1
Gobinath