'Limit rows shown in JTable + Next/Previous button

I'm trying to create a JTable that's only showing one row at the time. When you press Next/Previous, the table will display either the next or the previous row, depending on the button pressed. If there is no Next/Previous, the JTable shall display the first/last element.

Code for only showing one row at a time:

tableModel = new DefaultTableModel(data, columnNames);
tableModel.setRowCount(0); //If I remove this, the things I add ends up att the 2nd line.
tableModel.addTableModelListener(resultTable);
resultTable = new JTable(tableModel);
scroll = new JScrollPane(resultTable, JScrollPane.VERTICAL_SCROLLBAR_NEVER, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);

final int rows = 1;
Dimension d = resultTable.getPreferredSize();
resultTable.setPreferredSize(new Dimension(d.width,resultTable.getRowHeight()*rows));

Code for Next-button (Not working, what do to? Shows the same element as before):

int height = resultTable.getRowHeight()*(rows-1);
JScrollBar bar = scroll.getVerticalScrollBar();
bar.setValue( bar.getValue()+height);

Code for Previous-button (Not working, same as above, nothing happens/changes.)

int height = resultTable.getRowHeight()*(rows-1);
JScrollBar bar = scroll.getVerticalScrollBar();
bar.setValue(bar.getValue()-height);

What do to? Some help would be greatly appreciated. Been trying to solve this forever.

Edit: Trying to follow the code from here: JTable row limitation but can't get it to work.. Though I only want to show 1 row, not 10.



Solution 1:[1]

From the above you specify row count to get single row in a table

 final int rows = 2;

Alternatively you could try with table with Row header. Here is a sample http://www.java2s.com/Code/Java/Swing-Components/TableRowHeaderExample.htm

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 vels4j