Metoda pobierająca dane z zaznaczonego wiersza jtable

0

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ć]

1

getSelectedRow() a potem pętla po kolumnach i getValueAt()

0

@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ąć?

0

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...

0

@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

0

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);
0

@bogdans

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

1 użytkowników online, w tym zalogowanych: 0, gości: 1