Salve ragazzi, ho un problema.. non riesco a far funzionare una JProgressBar all'interno di una cella di JTabel... la tabella visualizza la JProgressBar ma scorre solo quando ci clicco sopra..vi spiego a grandi linee come ho fatto:
//Creo la tabella associandovi il modello che implemento..
String[] colonne = {"Nome File","Progresso"};
Object[][] dati = new Objec[100][2];
Modello mod = new Modello(dati,colonne);
JTable tabella = new JTabella(mod);
//Modello:
public class Modello extends AbstractTableModel {
private String[] colonne;
private Object[][] dati;
public ModTrasf(Object[][] dati, String[] colonne) {
super();
this.dati = dati;
this.colonne = colonne;
}
//Il numero di righe
public int getRowCount(){
return dati.length; }
//Il numero di colonne
public int getColumnCount()
{ return colonne.length; }
//La posizione data la riga e la colonna
public Object getValueAt(int table_row, int table_column){
return dati[table_row][table_column];
}
//Il nome delle colonne
public String getColumnName(int column){
return colonne[column];
}
public void setValueAt(Object aValue, int row, int column) {
dati[row][column] = aValue;
}
dopo di che tramite un'altra JTable, cliccando su una riga di ques'ultima interisco una nuova riga nella nuova tabella :
....
MouseListener mouseListener = new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2) {
String nomeRicerca = (String)tabCerca.getValueAt(index,0); String[] colonne = {"Nome File","Progresso",
dati[conta][0] = nomeRicerca;
ProgressBarDemo c = new ProgressBarDemo(0,100);
dati[conta][1] = c;
Modello modTrasf = new Modello(dati,colonne);//
tabella.setModel(modTrasf);
tabella.getColumn("Progresso").setCellRenderer(new PanelRenderer());
}
}
};

vi spiego a grandi linee come ho fatto:
Rispondi quotando