fallMed
Messages postés1Date d'inscriptionlundi 22 avril 2019StatutMembreDernière intervention22 avril 2019
-
Modifié le 23 avril 2019 à 09:48
Medzfall -
23 avril 2019 à 14:55
Bonjour,
jde dois créer une interface graphique qui doit contenir plus de 100 champs j'arrive a récupérer les données saisies dans chaque champs mais ça prend du temps voici un extrait du code
String indssdmigr1 = indssdmigr.getText();
String nom1 = Nom1.getText();
String nom2 = Nom2.getText();
String nom3 = Nom3.getText();
String nom4 = Nom4.getText();
String nom5 = Nom5.getText();
String nom6 = Nom6.getText();
String nom100 = Nom6.getText();
je voulais créer une boucle qui me permettra de récupérer les données et les afficher au lieu d'écrire tous les champs. merci d'avance
Numeric1
Messages postés7Date d'inscriptiondimanche 10 mars 2019StatutMembreDernière intervention29 avril 2019 23 avril 2019 à 07:17
Salut la façons la plus simple c'est de créer ta propre classe dérivée de JtextField. Tu pourras cependant y ajouter quelques méthodes pratiques.
import java.util.ArrayList;
import javax.swing.JTextField;
public class MyJTextField extends JTextField{
// Pour enregister automatiquement les instances JTextfield céees
protected ArrayList<MyJTextField> list = new ArrayList<>();
//Choix d'un constructeur approprié
public MyJTextField() {
super();
// Ajout de l'instance à la liste de stockage
list.add(this);
}
/**
* Methode rétournant un ArrayList comportant tous les text de jtextfield
* A noter qu'il ya peut être des JTextfield sans text
* Tu peux Filtrer l'ajout des text ou pas selon tes besoins
*/
public ArrayList<String> getTextAll() {
ArrayList<String> al = new ArrayList<>();
list.stream().forEach((t)->{
al.add(t.getText());
System.out.println(t.getText());
});
return al;
}
}
23 avril 2019 à 14:55