У меня есть Jtable (tableSummary). Мне нужно отформатировать 2 столбца таблицы, чтобы содержимое было в форме DECIMAL (например, 1,400.00) Как я могу это сделать?Формат номера в Jtable
вот мой код для таблицы:
private void tableMarketMouseClicked(java.awt.event.MouseEvent evt) {
String sql = "SELECT tblClientInfo.ClientID, tblrefmarket.MarketDesc, tblclientinfo.LastName, tblledger.LoanAmount, "
+ "tblledger.DateStarted, tblledger.DailyPay, tblledger.Expiry FROM tblclientinfo Inner Join tblbusinessinfo ON tblbusinessinfo.ClientID = tblclientinfo.ClientID "
+ "Inner Join tblrefmarket ON tblbusinessinfo.MarketID = tblrefmarket.MarketID "
+ "Inner Join tblledger ON tblledger.ClientID = tblclientinfo.ClientID where MarketDesc = ?";
try {
//add column to the table model
model.setColumnCount(0); //sets the column to 0 para ig utro click, dili mapun-an ang columns
model.setRowCount(0); //sets the row to 0 para ig utro click, dili mapun-an ang rows
model.addColumn("C NO");
model.addColumn("MARKET");
model.addColumn("BORROWER");
model.addColumn("LOAN");
model.addColumn("START");
model.addColumn("DAILY");
model.addColumn("EXPIRY");
//model.addColumn("BALANCE");
int row = tableMarket.getSelectedRow();
pst = conn.prepareStatement(sql);
pst.setString(1, tableMarket.getModel().getValueAt(row, 0).toString());
rs = pst.executeQuery();
while(rs.next()){
String id = rs.getString(1);
String market = rs.getString(2);
String name = rs.getString(3);
String amt = rs.getString(4);
String start = rs.getString(5);
String daily = rs.getString(6);
String expiry = rs.getString(7);
//String area = rs.getString(3);
model.addRow(new Object[]{ id, market, name, amt, start, daily, expiry});
}
tableSummary.setModel(model);
renderer.setHorizontalAlignment(JLabel.RIGHT);
renderer2.setHorizontalAlignment(JLabel.CENTER);
tableSummary.getColumnModel().getColumn(0).setCellRenderer(renderer2);
tableSummary.getColumnModel().getColumn(4).setCellRenderer(renderer2);
tableSummary.getColumnModel().getColumn(6).setCellRenderer(renderer2);
tableSummary.getColumnModel().getColumn(3).setCellRenderer(renderer);
tableSummary.getColumnModel().getColumn(5).setCellRenderer(renderer);
} catch (Exception e) {
e.printStackTrace();
JOptionPane.showMessageDialog(null, e);
}
}
колонна, АМТ и ежедневно являются столбцами я должен быть отформатирован.
Спасибо заранее!
все ваши проблемы имеют одинаковую причину: -до не добавлять строковое представление объектов в таблицуModel, вместо этого добавлять сами объекты. Затем вы можете настроить строку rep по мере необходимости, f.i. с форматами в пользовательских визуализаторах – kleopatra
Вы должны упростить свой код до сути проблемы, а с другой стороны попытайтесь предоставить пример самообслуживания, чтобы люди, пытающиеся помочь, могли легко протестировать, если они достигли своей цели. –