UITable und DateFormat
Posted: Mon Aug 09, 2010 10:28 pm
Wie kann einer Column vom Type TimestampDataType ein DateFormat zugewiesen werden, um dieses für die Anzeige verwenden zu können ?
LG, Tommy
LG, Tommy
Simplify IT business | SIB Visions
http://forum.sibvisions.com/
((IDateCellEditor)<IDataRow>.getRowDefinition().getColumnDefinition(COLUMN).
getDataType().getCellEditor()).setDateFormat("yyyy-MM-dd");
getFactory().getDefaultCellEditor(<IDataRow>.getRowDefinition().getColumnDefinition(COLUMN)
.getDataType().getTypeClass());
getFactory().setDefaultCellEditor(<Class>, <ICellEditor>);
//create databook
MemDataBook mdbDaySelection = new MemDataBook();
mdbDaySelection.setName("DAY_SELECTION");
mdbDaySelection.getRowDefinition().addColumnDefinition(new ColumnDefinition("DAY", new TimestampDataType()));
mdbDaySelection.open();
//set correct dateformat in table
mdbDaySelection.getRowDefinition().getColumnDefinition("DAY").getDataType().setCellEditor(new UIDateCellEditor("dd.MM.yyyy"));
//fill with dummy data
mdbDaySelection.insert(false);
mdbDaySelection.setValue("DAY", new java.util.Date(2010-1900,1,1));
mdbDaySelection.saveSelectedRow();
mdbDaySelection.insert(false);
mdbDaySelection.setValue("DAY", new java.util.Date(2010-1900,1,2));
mdbDaySelection.saveSelectedRow();
//create datarow
RowDefinition rdDay = new RowDefinition();
rdDay.addColumnDefinition(new ColumnDefinition("DAY", new TimestampDataType()));
//DataRow drDay = new DataRow(rdDay);
DataRow drDay = new DataRow(rdDay);
//set linkedcelleditor
UILinkedCellEditor lceDaySelection = new UILinkedCellEditor(new ReferenceDefinition(new String[] {"DAY"},mdbDaySelection,new String[] {"DAY"}));
drDay.getRowDefinition().getColumnDefinition("DAY").getDataType().setCellEditor(lceDaySelection);
//create editor
UIEditor eDay = new UIEditor();
eDay.setColumnName("DAY");
eDay.setDataRow(drDay);
((TimestampDataType)mdbDaySelection.getRowDefinition().getColumnDefinition("DAY").getDataType()).setDateFormat("dd.MM.yyyy");