IHM en Java avec OS X

HommeCocoa

Membre actif
3 Janvier 2003
173
0
Vevey - Suisse
Bonjour,

Pour ceux qui font du développement Java sur OS X avec Eclipse (mes conditions rendent ma requete peut être trop restrictive ;) ), j'aurais aimé savoir ce que vous utilisez pour l'interface graphique. Car sur OS X les plugins tel que Jigloo et VE ne fonctionnent pas et je commence à me rendre compte que de coder les interfaces en dur représente une belle perte de temps...

Haaaa pour ça, Cocoa c'est tellement génial :p

Merci,
David
 
Je fais tout à la main :rose:.



...et perso, je trouve pas que ce soit une perte de temps, j'irai presque jusqu'à dire que ça va aussi vite. Et je ne parle même pas de quand il s'agit de revenir 10 mois plus tard sur du code généré par un des plugins.

Mais loin de moi l'idée de te convertir :siffle:.
 
Bon... quelque part, tu m'as presque converti car quand je crée un site, j'ai aussi pour philosophie de tout faire à la main... :p

Allez soyons fou, je met mon idée de plugin de coté

Parlons alors plutôt de mon incompétence à utiliser GridBagLayout :siffle: ...
Je saisi pas tout à fait le concepte de "poids" enfin les champs weightx et weighty de la GridBagConstraints, quelle est leur influance? :(
 
Le weightx indique en pourcentage (ou ratio) l'espace horizontal que prendra le composant par rapport à tous ceux qui sont sur la même ligne.

Pour ma part, j'utilise des weigthx entre 0 et 1 de sorte que le total des weigthx d'une même ligne fasse 1. Ainsi, pour 2 composants, si l'un a 0.25 et l'autre 0.75, ils occuperont respectivement 1 quart et 3 quart de l'espace horizontal du conteneur.

Ensuite, le fill indique si ton composant devra être ou non aggrandi dans la zone libérée par le weightx. Les valeurs possibles sont HORIZONTAL, VERTICAL, BOTH et NONE.

L'étape préliminaire dans toute utilisation d'un GridBagLayout est d'avoir bien en tête (voire sur papier) le découpage et la disposition des éléments, ainsi que la manière dont on veut qu'ils réagissent.

J'ai du poster y'a qq jours dans ce même forum un exemple de code qui en utilise-un. Jettes-y un coup d'oeuil ;).
 
Je fais tout à la main :rose:.
...et perso, je trouve pas que ce soit une perte de temps, j'irai presque jusqu'à dire que ça va aussi vite. Et je ne parle même pas de quand il s'agit de revenir 10 mois plus tard sur du code généré par un des plugins.

Mais loin de moi l'idée de te convertir :siffle:.

[Mode Troll ON]

j'ai une ch'tite appli à adapter en java, tu pourrais me faire le code de l'interface, ça va me faire gagner un temps fou ;)


http://perso.orange.fr/mpergand/applis/4op_editor/english/fb01_editor.jpg

:D
 
Merci bien pour ces précisions! Je vais continuer dans ma découverte du GridBagLayout, car ça me semble être un des layouts les plus "souple".

Sinon, utilisez-vous beaucoup la combinaison de plusieur layout?
 
Merci bien pour ces précisions! Je vais continuer dans ma découverte du GridBagLayout, car ça me semble être un des layouts les plus "souple".

Sinon, utilisez-vous beaucoup la combinaison de plusieur layout?

Je ne vois pas très bien ce que tu veux dire :siffle:...

Si ta question est de savoir s'il est courant de faire un premier panel avec un borderlayout qui contient en son centre un autre panel muni d'un gridbaglayout... et bien oui, c'est fréquent ;).
 
Oui c'était bien ça le sens de ma question.

Mais obtient-on de beau résultats avec des BoxLayout horizontale dans des verticale? ou c'est mieux de carément tout construire avec le GridBagLayout?

Je ne vois pas pouquoi ça pècherait... ceci-dit, pour une meilleure lisibilité et une maintenance plus aisée, l'utilisation du GridbagLayout semble -à mon avis- la meilleure option.
 
Hm... je ne suis pas tout à fait du même avis. GridbagLayout est à utiliser avec parcimonie. Il est lourd et souvent on peut faire un GUI plus java-like avec d'autres layout, comme le "standard" : BorderLayout.

Notamment, j'ai souvent tendance à utiliser un BorderLayout pour le JPanel principal avec un JPanel au NORTH, un JPanel au SOUTH, puis mettre des boutons dans le JPanel du sud avec un simple FlowLayout.

Pour plus d'infos.