Afficher les items JComboBox sélectionnés dans un JTable
Bonjour tout le monde!
Je veux faire une interface dans laquelle on trouve deux JComboBox et un JTable de deux colonnes. Dans ce JTable, on va afficher les deux items qui auront été sélectionnés par l'utilisateur.
Mon premier problème c'est que mon tableau ne s'affiche pas dans ma fenetre 8O
Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
public void build(String [] titresListes){
lbl_parametre1 = new JLabel();
parametre1 = new JComboBox();
lbl_parametre2 = new JLabel();
parametre2 = new JComboBox();
tableauRecapitulatif = new JTable();
JLabel message = new JLabel("<html><font size=\"5\" color=\"black\">Paramétrage du tableau de bord</font></html>");
setLayout(new BorderLayout(5,5));
setTitle("Module de gestion de tableau de bord");
setSize(650,300);
setLocationRelativeTo(null);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
/* Titre */
panelTitre.add(message,"message");
add(panelTitre, BorderLayout.NORTH);
/* Formulaire */
panelParametrage.setLayout(new FlowLayout(FlowLayout.CENTER,5,5));
lbl_parametre1 = new JLabel (""+titresListes[0]+"");
parametre1 = new JComboBox (new String[] { "","Item 1", "Item 2", "Item 3", "Item 4" });
parametre1.addActionListener(new ItemAction());
lbl_parametre2 = new JLabel (""+titresListes[1]+"");
parametre2 = new JComboBox (new String[] { "","Item 1", "Item 2", "Item 3", "Item 4" });
parametre2.addActionListener(new ItemAction());
panelParametrage.add(new JLabel(" "));
panelParametrage.add(lbl_parametre1);
panelParametrage.add(parametre1);
panelParametrage.add(new JLabel(" "));
panelParametrage.add(lbl_parametre2);
panelParametrage.add(parametre2);
panelParametrage.add(new JLabel(" "));
add(panelParametrage, BorderLayout.CENTER);
Object[][] donnees = {{""+parametre1.getSelectedItem()+"",""+parametre2.getSelectedItem()+""}};
String[] colonnes = {""+titresListes[0]+"", ""+titresListes[1]+""};
JTable table = new JTable(donnees, colonnes);
table.setPreferredScrollableViewportSize(new Dimension(640,50));
JScrollPane jsp = new JScrollPane(table);
panelBouton.add(jsp);
TableModel tableur = table.getModel();
panelBouton.add(table);
setVisible(true);
} |
Pour afficher le résultat des items sélectionnés, j'ai fait une classe ItemAction dans laquelle je reprends le code de mon tableau de la classe précédente mais en ajoutant "getSelectedItem()" pour savoir quel item a été sélectionné :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| public class ItemAction implements ActionListener{
public void actionPerformed(ActionEvent e) {
Object[][] donnees = {{""+parametre1.getSelectedItem()+"",""+parametre2.getSelectedItem()+""}};
String[] colonnes = {"Inconnu", "Inconnu"};
JTable table = new JTable(donnees, colonnes);
TableModel tableur;
table.setPreferredScrollableViewportSize(new Dimension(650,50));
JScrollPane jsp = new JScrollPane(table);
add(jsp);
tableur = table.getModel();
panelBouton.add(table);
}
} |
Si vous avez une idée sur l'origine de mes deux problèmes ça m'aiderait bcp...
Merci à tous