-
Changer look and feel
Bonjour, j'ai telechargé le bricopack vista inspirat, et j'ai développ mon log avec ce style (très beau d'ailleurs).
J'aimerais savoir comment on fait pour remplacer :
Code:
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
par l'équivalent avec le look and feel inspirat.
Je pense qu'il faut d'abord savoir ou est installé ce look and feel (dossier??fichiers??).
Le copier dans le chemin de l'installation et le linker, mais je n'arrive pas le trouver.
Comment cela se présente il??
merci pour votre aide
-
En fait le getSystemLookAndFeelClassName renvoie le nom du Look & Feel de l'OS.
Dans ton cas Il récupère le L&F Windows.
Ce L&F se base sur une API native pour récupèrer le look à affecter à ton appli java(UXTheme.dll en l'occurence). I a pour but de faire en sorte que ton appli ai graphiquement la même tête que les auters applis de ton système.
Donc tu ne pourras avoir le L&F inspirat que si celui ci est installé et activé sur le Windows de l'utilisateur, il n'existe pas de moyen de contourner çà.
-
Et ca:
OK, mais j'ai peut etre une solution dis moi si ca te parrait bon :
je crée un msi pour installer mon soft, et dedans je mets l'installeur du bricopak (qui contient mon L&F).
et je fais un getL&F dans ma class principale (pour etre sur qu'il est bien installé), et comme je connais son nom, j'ai plus qu' faire un set.
Ca peut marcher??
jamais testé
-
Salut,
Non, ça ne marchera pas.
Je t'explique grossièrement comment ils ont fait les look and feel Swing :
T'as les look and feel de base qui sont dessinés à la main, c'est à dire que pour dessiner un bouton, il faut remplir un rectangle, dessiner le contour, le texte, etc. Tout est fait à la main.
Mais sous Windows, Mac OSX et Linux, comme y'avait des gens qui voulaient que les applications Java aient la même tête que les autres applications, Sun a créé des Look and feel, qui se servent directement des DLL système de thème (pour Windows), afin de pouvoir dessiner les boutons et fenêtres avec le thème Windows qui est en cours d'utilisation.
Ceci dit faut comprendre qu'un look and feel Windows et un look and feel Swing, c'est pas du tout la même chose. Donc t'as zéro chance de dire "Ouais Java, je veux que tu utilises le thème Windows Inspirat".
Les 2 seul moyens existants d'avoir ton thème Inspirat, c'est :
- Tu codes à la main un look and feel qui reproduit le thème Inspirat (ce serait très très long)
- Tu vas dans les propriétés d'affichage de Windows et tu sélectionnes le thème Inspirat. Inutile de te préciser que ça ne marchera que sous Windows.
Voilà,
Désolé que ça soit pas possible
@+
-
Tout est possible
suffit de décompiler le look and feel inspirat alors?
-
Non, il n'existe pas de L&F inspirat.
Juste un Look & Feel qui utilise les API Windows.
Le seul moyen pour toi serait d'obliger ton utilisateur à installer le Vista Inspirat machintruc pack, ce que je trouve plutôt désagréable du point de vue utilisateur (il a encore le droit de faire ce qu'il veut si je ne m'abuse...)
Donc utilises le L&F system de java, l'utilisateur aura une appli qui s'adapte à l'apparence de son OS.
Ou alors utilises un L&F cross platform si tu veux que ton appli garde la même apparence sur tous les OS (genre Ocean/metal ou tout autre L&F tierce partie comme JGoodies, Substance, Synthetica ou autres).
Eventuellement si tu as du temps à perdre et du courage tu peux essayer de créer un L&F Synth qui corresponde à ton skin vista, mais ce n'est pas forcément aisé, d'autant plus que les tutos Synth sont plutôt rares.
Enfin voilà.
Par contre écrire un L&F demande beaucoup plus de compétences que tu n'en possèdes à l'heure actuelle (c'est du boulot d'expert Swing de haut niveau).
-
ouin!