J'aime développer en Java mais souhaite également une compatibilité avec le menu global? Y a-t-il un moyen? Veuillez aider.
11
J'aime développer en Java mais souhaite également une compatibilité avec le menu global? Y a-t-il un moyen? Veuillez aider.
Il existe une bibliothèque appelée java-gnome (un wrapper java gtk) qui permet à vos applications de se comporter comme toutes les applications natives. Il leur donne toute la gloire: widgets natifs, menu global, etc.
La bibliothèque est disponible sur les référentiels ubuntu:
L'objectif de la bibliothèque est de développer une riche expérience Java + Gnome. Attention, si vous utilisez cette bibliothèque, votre application perdra la fonctionnalité multiplateforme de Java (car elle sera liée à java-gnome).
Voici un exemple d'application (fournie avec java-gnome) affichant l'intégration du menu:
Essayez l'Ayatana. Vous pouvez trouver des instructions ici: http://hanynowsky.wordpress.com/2012/05/12/integration-of-java-swing-applications-with-unity-global-menu-in-ubuntu-12-04/
Tout ce que vous avez à faire est d'importer la bibliothèque Java Ayatana et de l'appeler dans votre classe JFrame principale. Cela implique en fait l'ajout des deux lignes suivantes dans votre code (ainsi que l'importation de classes Ayatana):
Voici un exemple:
Et le plus important est que votre application soit toujours multiplateforme. J'ai testé l'exemple ci-dessus dans Ubuntu 12.04 LTS et Windows XP.
la source
Vous pouvez utiliser un ppa: ppa: danjaredg / jayatana
http://www.webupd8.org/2014/02/get-unity-global-menu-hud-support-for.html
la source
Cela se fait normalement au niveau de la boîte à outils, par exemple dans GTK ou Qt. Donc, la manière prévue de le faire serait de patcher Swing, si c'est la boîte à outils GUI que vous utilisez. Cependant, tous les composants Unity communiquent à l'aide de DBus, donc si vous le vouliez vraiment, vous pouvez le faire vous-même en implémentant vous-même l'API DBus. Si vous voulez faire cela, vous voudrez peut-être jeter un œil à libdbusmenu et voir comment cela fonctionne.
la source
Pas une solution pour vous, mais pour info: j'ai déposé le bogue Ubuntu # 984916 pour suivre le fait que les menus Swing ne sont pas (semi-) automatiquement intégrés dans le menu global.
la source