[Java] Faire un "retour à la ligne" - GUI [Résolu/Fermé]

Signaler
-
Messages postés
16336
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
14 mai 2021
-
Bonjour à tous,
Etant en train de programmer en Java, je me permets de poser une question.
Je suis actuellement sur un projet de GUI et j'aimerais que cela soit affiché comme ceci dans mon interface :

JLabel JTextArea
JLabel JTextArea

Cependant, ma fenêtre étant trop grande, cela me met :

JLabel JTextArea JLabel
JTextArea

Comment faire une sorte de "retour à la ligne" dans une GUI, s'il vous plaît, mais sans redimensionner ma fenêtre ?

Merci beaucoup,
lolteur.

2 réponses

Messages postés
16336
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
14 mai 2021
2 829
Comment tu as fait ton code ? En particulier comment tu arrives à ce résultat là ?
Regarde public void setLocation(int x,int y) ça devrait te permettre de positionner tes Component où tu veux, en l'occurrence les uns en dessous des autres..

Non en fait je crois utiliser ceci :
panel.gridLayout(2, 2);

Par contre cela me fait un espace considérable entre le JLabel et le JTextArea... :/
Messages postés
16336
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
14 mai 2021
2 829
Avec un GridLayout ça va te diviser ton conteneur en parties égales, donc avec (2,2) tu vas forcément te retrouver avec ton JTextArea au milieu et donc très éloigné du JLabel.

Remarque : quel est le type de ton objet "panel" ? Certainement pas Panel en tout cas, car il n'accepterait pas la méthode gridLayout(int,int)

Essayes avec setLocation(int,int) comme je te l'ai indiqué :

JLabel label1, label2;
JTextArea area1, area2;
int xLabel=5, xArea=30, yLigne1=5, yLigne2=20; // je donne des valeurs au pif ^^
label1.setLocation(xLabel, yLigne1);
area1.setLocation(xArea,yLigne1);
label2.setLocation(xLabel, yLigne2);
area2.setLocation(xArea,yLigne2);