Gp est une classe de service qui fournit entre autres des fabriques et des objets statiques :
Des Panels dotés de GridBagLayout
indicés
Des Méthodes de services pour l'encapsulation de GridBagConstraint
Les fabriques AbstractVUE et AbstractSAISIE utilisent les panels et le GridBagConstraint fournit par la classe de service GP
AbstractSAISIE fourni un panel Libellés jpDbl et un panel Edits JpDbE qu'il rempli automatiquement avec le mappage AbstractFICHE
Modifier TableTestSAISIE
public void initGuiLE(){ //initGuiLSimple(); //Le panel automatique des Libellés jpDbL=new JPanel(Gp.adaptePanelE()); jpDbL.add(lcode, Gp.gety()); jpDbL.add(llibe, Gp.gety()); jpDbL.add(lstab, Gp.gety()); //initGuiESimple(); //Le panel automatique des Edits jpDbE=new JPanel(Gp.adaptePanelE()); jpDbE.add(code, Gp.gety()); jpDbE.add(libe, Gp.gety()); jpDbE.add(stab, Gp.gety()); }
Modifier TableTestSAISIE
public void initGuiLE(){ initGuiLSimple(); //jpDbL=new JPanel(Gp.adaptePanelE()); //jpDbL.add(lcode, Gp.gety()); //jpDbL.add(llibe, Gp.gety()); //jpDbL.add(lstab, Gp.gety()); // initGuiESimple(); // Supprimer Le panel automatique des Edits jpDbE=new JPanel(Gp.adaptePanelE()); jpDbE.add(code, Gp.gety()); jpDbE.add(libe, Gp.gety()); jpDbE.add(stab.getThisInPanelsetLibe("c_libe", 30), Gp.gety()); }
Je compile et je teste : la saisie tabulaire avec le libellé de sous_table_test
Coder sa mise en forme en exploitant le GridBagConstraint intégré
public void initGuiLE(){ initGuiLSimple(); //jpDbL=new JPanel(Gp.adaptePanelE()); //jpDbL.add(lcode, Gp.gety()); //jpDbL.add(llibe, Gp.gety()); //jpDbL.add(lstab, Gp.gety()); // initGuiESimple(); // Supprimer Le panel automatique des Edits jpDbE=new JPanel(Gp.adaptePanelE()); jpDbE.add(code, Gp.gety()); jpDbE.add(libe, Gp.gety()); jpDbE.add(stab.getThisInPanelsetLibe("c_libe", 30), Gp.gety()); }
Je compile et je teste : la fiche n'est plus tabulaire mais ce n'est pas beau
Modifier TableTestSAISIE
public void initGuiLE(){ ccs.alignL(SwingConstants.LEFT); // Changer l'alignement par défaut des libellés' jpDbE=new JPanel(Gp.adaptePanelE()); jpDbE.add(lcode, Gp.gety()); jpDbE.add(llibe, Gp.getx()); Gp.setx(0); jpDbE.add(code, Gp.gety()); jpDbE.add(libe, Gp.getx()); Gp.setx(0); Gp.setWidth(2); jpDbE.add(lstab, Gp.gety()); jpDbE.add(stab.getThisInPanelsetLibe("c_libe", 30), Gp.gety()); Gp.setWidth(1); }
Les libellés et les édits sont tous dans le même
panel. Le panel de libellés JpDbL n'est plus utile.
Les libellés sont alignés à droite par défaut.
Je compile et je teste : la fiche est correctement mise en page