Ho creato questo Codice che prende i valori di un Db in base in una scelta precedente e mi da la possibilità di scegliere la quantità di elementi tramite JComboBox. Il problema è che quando seleziono la quantità mi da sempre 1 come risultato e non mi prende il valore selezionato. Cosa devo Fare??
Codice:
package it.view;
import java.awt.*;
import java.util.Iterator;
import javax.swing.*;
import javax.swing.table.TableColumn;
import it.Dao.HomeDao;
import it.view.listeners.prodList;
@SuppressWarnings("serial")
public class Art extends JFrame {
public Art(String col1) {
JPanel DescrP= new JPanel(new GridLayout());
JPanel Bot=new JPanel(new FlowLayout(FlowLayout.CENTER));
Container c= getContentPane();
c.setLayout(new BorderLayout(10,5));
//imposto tabella e jbutton
JButton Aggiungi=new JButton("Aggiungi al carrello");
JButton Chiudi=new JButton("Chiudi");
String[] riga;
String[] Colonne1={"Nome","Prezzo","immagine","Sconto","Quantita"};
Object[][] data1=new Object[1][6];
final JTable Tab1 = new JTable(data1, Colonne1);
JScrollPane jSPane1 = new JScrollPane(Tab1);
//combobox per valore qta
TableColumn Table=Tab1.getColumnModel().getColumn(4);
JComboBox<Integer> qtaBox=new JComboBox<Integer>();
//Tab1.getColumnModel().getColumn(4).setCellEditor(qtaBox);
Table.setCellEditor(new DefaultCellEditor(qtaBox));
//avvaloro tabella
Iterator<String[]>i=HomeDao.getInstance().descrProd(col1);
while(i.hasNext()){
riga = i.next();
for(int k=1;k<=Integer.parseInt(riga[4]);k++){
qtaBox.addItem(k);
}
data1[0][4]=qtaBox;
for(int j=0;j<4;j++){
data1[0][j]=riga[j];
}
}
System.out.println(qtaBox.getSelectedItem());
Aggiungi.addActionListener(new prodList(this));
Chiudi.addActionListener(new prodList(this));
this.setLocation(500, 200);
setVisible(true);
setSize(400, 200);
Bot.add(Aggiungi);
Bot.add(Chiudi);
DescrP.add(jSPane1);
c.add(DescrP,BorderLayout.CENTER);
c.add(Bot, BorderLayout.SOUTH);
}
}