Anchor .net dans JAVA SWING comment faire ?

Fermé
dev_man Messages postés 83 Date d'inscription dimanche 30 octobre 2011 Statut Membre Dernière intervention 29 avril 2013 - 23 oct. 2012 à 12:50
dev_man Messages postés 83 Date d'inscription dimanche 30 octobre 2011 Statut Membre Dernière intervention 29 avril 2013 - 24 oct. 2012 à 10:58
Bonjour,

je suis entrain de développer une application Desktop en java/swing sous netbeans, et j'aimerais bien savoir comment faire pour que mes composants change de dimensions automatiquement avec le changement de la taille de la fenêtre comment c'est le cas sous visual studio avec la propriété Anchor

Merci infiniment


A voir également:

2 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
23 oct. 2012 à 14:14
Alors je ne connais pas Anchor sous Visual Studio, mais avec les Layout en Java les composants s'adaptent à la taille de la fenêtre.

Exemple avec un GridLayout :

import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;

public class Test
{
public static void main(String[] args)
{
	int w=10, h=10;
	
	JFrame frame = new JFrame();
	frame.setLayout(new GridLayout(h,w));
	
	for (int c=0; c<h; c++)
	for (int r=0; r<w; r++)
		frame.add(new JButton(String.format("%d-%d",r+1,c+1)));
	
	frame.pack();
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.setVisible(true);
}
}
0
dev_man Messages postés 83 Date d'inscription dimanche 30 octobre 2011 Statut Membre Dernière intervention 29 avril 2013 2
23 oct. 2012 à 15:49
Bonjour,

est ce que ca permet de garder la distance entre les composant et que les composants prennent une nouvelle dimension suivant la taille de la fenêtre ?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
23 oct. 2012 à 15:58
Dans mon exemple on garde bien les mêmes distances entre chaque composant, et c'est bien la taille de ces composants qui évoluent avec la taille de la fenêtre !

Cependant, GridLayout est très basique, il y a d'autres Layout plus complexes qui prennent en charge les espacements, etc. De plus on peut combiner différents Layout (chaque panel est dirigé par un Layout) donc on peut faire à peu près ce que l'on veux !
0
dev_man Messages postés 83 Date d'inscription dimanche 30 octobre 2011 Statut Membre Dernière intervention 29 avril 2013 2
23 oct. 2012 à 16:01
Oui je vous comprends, pour moi je dois réaliser une appli pro donc qui doit être flexible avec la taille de la fenêtre, qu'est ce que vous me conseiller comme Layout pour remédier à ce problème? à votre avis dois-je opter pour eclipse ou netbeans ?

merci
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
23 oct. 2012 à 16:22
Si on fait la mise en forme "à la main" Eclipse ou NetBeans ça ne change rien (pour des mises en formes poussées on a GroupLayout, mais la combinaison de plusieurs types de Layout est à priviligié).

Par contre si on utilise les "GUI Builders" (WindowBuilder pour Eclipse, Java Swing GUI Builder pour NetBeans) il faut savoir que chacun de ces éditeurs utilisera des bibliothèques non-standards, et qu'il faudra la plupart du temps se promener avec des fichiers JAR supplémentaires, qui alourdissent l'application en taille d'exécutable, et en temps d'exécution (sans parler du code généré automatiquement qui ne permet pas toujours de faire ce que l'on veux).

Ma préférence va pour un codage à la main, ça permet plus de liberté, et une meilleur maîtrise du code, même si bien sûr ça ne se fait pas en quelques clics...
0
dev_man Messages postés 83 Date d'inscription dimanche 30 octobre 2011 Statut Membre Dernière intervention 29 avril 2013 2
23 oct. 2012 à 17:06
D'acc et pour l'empaquetage et le déploiement on opte pour quel outil ?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
23 oct. 2012 à 17:23
Ce sera un (ou plusieurs) JAR, mais le choix de l'IDE ou des Layout ne change rien, c'est du Java pur.
0