J'essaie de construire une fenêtre d'interface graphique dans mon application. Ce que j'essaie de faire est d'avoir une fenêtre, avec quelques boutons en haut et une grande zone de texte. Quelque chose comme ceci: Je suis presque là, en utilisant grouplayout: p> layout.setHorizontalGroup(
layout.createParallelGroup()
.addGroup(layout.createSequentialGroup()
.addComponent(button1)
.addComponent(button2))
.addComponent(closeWindow))
.addComponent(textarea1)
);
layout.setVerticalGroup(
layout.createSequentialGroup()
.addGroup(layout.createParallelGroup()
.addComponent(button1)
.addComponent(button2)
.addComponent(button3))
.addComponent(textarea)
);
3 Réponses :
Essayez d'ajouter: après le deuxième bouton. Le max_value fera élargir le vide autant que nécessaire. P> P>
Ajouter un espace dans votre groupe séquentiel. Laissant votre groupe horizontal tel quel: L'écart avec ces paramètres agit comme un "printemps", prenant tout espace disponible. P> p>
Devrait être "layouttyle.componentplacement.Related", mais autre que cela fonctionne bien, merci :)
Bonjour, si vous n'ajoutez que cette ligne au groupe vertical ou également au groupe horizontal?
Vous souhaitez utiliser addPreferredGap () qui n'est disponible que sur des groupes séquentiels. Le code ci-dessous vous donne la mise en page souhaitée.
layout.setHorizontalGroup(
layout.createParallelGroup()
.addGroup( layout.createSequentialGroup()
.addComponent( button1 )
.addComponent( button2 )
.addPreferredGap( LayoutStyle.ComponentPlacement.RELATED, GroupLayout.PREFERRED_SIZE, Short.MAX_VALUE )
.addComponent( button3 ) )
.addComponent( textArea )
);
layout.setVerticalGroup(
layout.createSequentialGroup()
.addGroup( layout.createParallelGroup()
.addComponent( button1 )
.addComponent( button2 )
.addComponent( button3 ) )
.addComponent( textArea )
);