Czy jest jakaś metoda/ funkcja wbudowana w javie, która pobiera dane z zaznaczonego wiersza jtable? np. zaznaczam pierwszy wiersz i metoda pobiera dane z każdej kolumny pierwszego wiersza [chce je później wypisać]
getSelectedRow() a potem pętla po kolumnach i getValueAt()
@Shalom
Shalom napisał(a):
getSelectedRow() a potem pętla po kolumnach i getValueAt()
Próbowałem to zrobić w ten sposób i nie działa....
Object y=e.getSource();
if(y==wypozycz)
{
int w=baza.getSelectedRow();
for(int i=0;i<baza.getColumnCount();i++)
{
h=baza.getValueAt(w, i);
}
JOptionPane.showMessageDialog(null, h);
}
Czy mógłby ktoś mi pomóc to ogarnąć?
o_O No i co ten kod niby robi według ciebie? Wczytujesz sobie wartość do zmiennej h
a potem NADPISUJESZ JĄ wartością z następnej kolumny. Geniusz! Jak chcesz wypisać wszystkie kolumny dla danego wiersza to dobrze byłoby te wartości jednak gdzieś zapamiętać, w liście czy coś... Bo teraz to zrobiłeś tak:
int x = 0;
for(int i=0;i<10;i++){
x = i;
}
System.out.println(x);
i się dziwisz że na ekran wypisuje się tylko liczba 9 a nie wszystkie liczby 0-9...
@Shalom
Object y=e.getSource();
if(y==wypozycz)
{
int w=baza.getSelectedRow();
for(int i=0;i<baza.getColumnCount();i++)
{
h=baza.getValueAt(w, i);
JOptionPane.showMessageDialog(null, h);
}
Działa, dzięki
TY chcesz wykończyć użytkownika serią komunikatów?
Object y=e.getSource();
if(y==wypozycz)
{
int w = baza.getSelectedRow();
String msg = "";
for(int i=0;i<baza.getColumnCount();i++)
{
msg = msg + baza.getValueAt(w, i)+"\n";
}
JOptionPane.showMessageDialog(null, msg);
Nie chcę go wykończyć :)
Object y=e.getSource();
if(y==wypozycz)
{
int w=baza.getSelectedRow();
for(int i=0;i<baza.getColumnCount();i++)
{
h=baza.getValueAt(w, i);
hist.add(h);
}
JOptionPane.showMessageDialog(null,hist);
}
Nie chcę tego wypisywać w JOptionPane, robię to tylko dla testu... Chcę to teraz przekazać do drugiej klasy w której jest okno Historia i wypisać to w nim, ale nie wiem do końca jak to zrobić.. Nie wiem czy wypisać to w Jlabel czy też w jtable