2015-06-11 3 views
0

У меня есть JTable в JScrollPane, где я хочу отображать все строки из таблицы MySQL. «Tr.getTransList()» получает строки, которые я хочу, и возвращает использование ResultSet для DbUtils. Имена колонок установлены правильно. Единственная проблема заключается в том, что я могу прокручивать только семь строк, потому что она показывает только семь строк. Мне нравится простота использования с DbUtils.resultSetToTableModel (rs) и предпочла бы использовать его. У меня есть метод ниже, в целом. Операторы печати выводят 409 и 12 для первых двух и 409 для третьего оператора печати.FIXED! JTable отображает только 7 строк из 409

Итак, почему я вижу только 7 строк на экране?

Я использую NetBeans 7.3, и у меня нет строк или столбцов, установленных в таблице в режиме разработки. Я попытался установить 50 строк и 99 строк (максимум, что позволяет мне использовать), но нет никакой разницы - я все еще получаю только 7 строк. Я не вижу никаких параметров в scrollpane или jtable, которые бы ограничивали это, но я все еще довольно новый Java-программист.

Линия, которая закомментирована, является той, которую я использовал первоначально, следующих строк там не было. Я добавил их, чтобы распечатать информацию с модели.

private void populateLastTrans() { 
    ResultSet rs; 

    rs = tr.getTransList(); 

    // lastTransTable.setModel(DbUtils.resultSetToTableModel(rs)); 
    TableModel model = DbUtils.resultSetToTableModel(rs); 
    System.out.println("rowCount: " + model.getRowCount()); 
    System.out.println("colCount: " + model.getColumnCount()); 

    lastTransTable.setModel(model); 
    System.out.println("rows: " + lastTransTable.getRowCount()); 
    } 

Я не считаю, что в запросе SQL, потому что я получаю все 409 строк в тузд клиента, но только в том случае, вот запрос я использую:

SELECT 
trans_id AS Trans, head AS Head, weight AS Weight, buyerID AS Buyer, 
sellerID AS Seller, descrip AS Description, price AS Bid, 
mode AS Mode, TRUNCATE(weight/head, 0) AS AvgWgt, amount AS TotalCost, 
IF(mode IN (1,3,5,7),TRUNCATE(price*(weight/100)/head,2),price) AS ByHD, 
IF(mode IN (1,3,5,7),price,TRUNCATE(price/(weight/head)*100,2)) AS ByCWT 
FROM trans WHERE date=(SELECT MAX(start) FROM sales WHERE sel=1) 
ORDER BY trans_id DESC 

ответ

0

Исправлено! Я удалил scrollpane и jtable (в третий раз), и он снова начал работать. Должно быть, что-то, что я установил в jtable или scrollpane, которые испортили его, но я точно не вижу, что это может быть ...