Mam tabelkę:
String[] nag={"Imie Nazwisko:","Hasło:"};
final JFrame frame = new JFrame("Personel");
która uzupełniam danymi:
personnel = new ArrayList<Pracownik>(EmployeeListDecorator.readList(fileName));
final String[][] dane=new String[personnel.size()][3];
for (int i=0;i<personnel.size();i++)
for (int j=0;j<3;j++)
{
dane[i][0]=personnel.get(i)._imie;
dane[i][1]=personnel.get(i)._haslo;
}
TableModel model = new DefaultTableModel(dane, nag)
{
public Class getColumnClass(int column)
{
Class returnValue;
if ((column >= 0) && (column < getColumnCount()))
{returnValue = getValueAt(0, column).getClass();}
else {returnValue = Object.class; }
return returnValue;
}
};
table = new JTable(model);
//-------------------------------------------------------------------------
final RowSorter<TableModel> sorter = new TableRowSorter<TableModel>(model);
table.setRowSorter(sorter);
js = new JScrollPane(table);
Teraz mam tez metode zaznaczania wierszy myszka:
table.addMouseListener(new MouseAdapter()
{
public void mouseClicked(final MouseEvent e)
{
if (e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() == 1)
{
JTable tabela=(JTable)(e.getSource());
index_do_usuniecia=tabela.getSelectedRow();
// Wyswietlanei wybranego rekordu
pole_pracownik.setText(personnel.get(index_do_usuniecia)._imie);
pole_haslo.setText(personnel.get(index_do_usuniecia)._haslo);
}
};
});
I wszystkoe jest ok, zaczyan sie psuc gdy porortuje table, wybieraja sie wiersze z tabeli a nie z tego co widze Załózmy ze mam 5 tekordow kolejno
1
2
3
4
5
Gdy klikne na tebn z watoscia 4 wybiera sie 4ty i jest ok
Jednak gdzy posortuje
5
4
3
2
1
I klikne na ten z warosicia 2gi to dalej wybiera sie 4ty ;/
wiem ze mam zly wybor zaznaczonegowirsz i powinienem uzyc :
convertRowIndexToModel() oraz convertRowIndexToView() z klasy JTable
Ale nie mam pojecia jak to zrobic, troche czasu juz zmarnowalem. Prosze o pomoc jakis przykald moze cokolwiek Dzieki