JTable display



In the below code I'm trying to display two fields (String and Date),
what happens is I'm not able to get the desired display of date in the
JTable. Can any one help me in getting the date displayed like "H:m |
dd-MM-yyyy"?

Thanks,
Abbas

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

public class tableTest {
public JFrame mainFrame = new JFrame("Java Task Manager");
public JPanel mainPanel = new JPanel();
public JTable mainTable = new JTable();
public DefaultTableModel defaultTableModel = new DefaultTableModel(){
public Class getColumnClass(int c){
return getValueAt(0,c).getClass();
}
};

public class CustomDate extends Date {

public CustomDate(){

}
public CustomDate(long arg0){
super(arg0);
}
public String toString(){
SimpleDateFormat sl = new SimpleDateFormat("H:m | dd-MMM-yyyy");
return sl.format(this);
}
}

public void showUI(){
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainFrame.getContentPane().add(mainPanel);
mainPanel.setLayout(new BoxLayout(mainPanel,BoxLayout.X_AXIS));
mainPanel.setLayout(new BoxLayout(mainPanel,BoxLayout.Y_AXIS));
mainPanel.add(new JScrollPane(mainTable));
mainTable.setModel(defaultTableModel);
String[] cid = {"Name","Date"};
defaultTableModel.setColumnIdentifiers(cid);
String[] nms = {"a","ss","de","des","fes"};
Calendar cl = Calendar.getInstance();
Date[] dts = new Date[5];
//1
cl.set(2008, Calendar.JANUARY, 1, 12, 44);
dts[0] = new CustomDate(cl.getTimeInMillis());
//2
cl.set(2008, Calendar.FEBRUARY, 22, 10, 12);
dts[1] = new CustomDate(cl.getTimeInMillis());
//3
cl.set(2008, Calendar.MARCH, 1, 1, 2);
dts[2] = new CustomDate(cl.getTimeInMillis());
//4
cl.set(2008, Calendar.APRIL, 1, 1, 32);
dts[3] = new CustomDate(cl.getTimeInMillis());
//5
cl.set(2008, Calendar.MAY, 1, 13, 14);
dts[4] = new CustomDate(cl.getTimeInMillis());
for(int i=0;i<5;i++){
Object[] ob= {nms[i],dts[i]};
defaultTableModel.addRow(ob);
}
mainTable.setAutoCreateRowSorter(true);
mainFrame.pack();
mainFrame.setResizable(false);
mainFrame.setVisible(true);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
tableTest ts = new tableTest();
ts.showUI();
}
}
.



Relevant Pages

  • Re: dynamic type checking - a pauline conversion?
    ... > public class AddressDisplayManager implements DisplayManager{ ... I don't really know know about your Display technology, ... string Middle; ... DisplayProgramData(Person PDat, Address ADat) ...
    (comp.object)
  • Returns NULL not the inputed strings.Please help!
    ... public class NamePrinter { ... public NamePrinter(String first, String middle, String last) { ... public void calculateName() { ... * @param args an array of command-line arguments ...
    (comp.lang.java.help)
  • Re: A Simple BMP Converter
    ... "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal ... Private Sub cmdSysInfo_Click ... Open Registry Key ... > color bar in the color display. ...
    (comp.lang.basic.visual.misc)
  • Re: help collecting data.
    ... Dim GetC As String ... the code in the cell that I want the order numbers(info from column C ... "Otto Moehrbach" wrote: ... display them both, seperated by a comma ...
    (microsoft.public.excel.misc)
  • Re: Output data from multiple records in a table
    ... > Dim rsR As DAO.Recordset ... > Dim strSQL As String ... > such as display it in a textbox on your form. ...
    (microsoft.public.access.modulesdaovba)