Here are the examples of the java api com.vaadin.ui.DateTimeField taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
1 Examples
3
Source : DemoFastGrid.java
with Apache License 2.0
from TatuLund
with Apache License 2.0
from TatuLund
/**
* We bind each column to a field (shared by all rows) so that we can edit
* each cell.
*/
private void bindColumnsToEditor() {
TextField col1 = new TextField();
TextField col3 = new TextField();
NumberField col4 = new NumberField();
TextField col5 = new TextField();
TextField col6 = new TextField();
DateTimeField col7 = new DateTimeField();
DateField col8 = new DateField();
CheckBox col9 = new CheckBox();
col9.setDescription("Selecting this will disable Col6");
PrefixComboBox<String> col10 = new PrefixComboBox<>();
List<String> items = new ArrayList<>(Arrays.asList("small", "medium", "large"));
// col10.setNewItemProvider(value -> {
// items.add(value);
// return Optional.ofNullable(value);
// });
col10.setEmptySelectionCaption("unsized");
col10.setDataProvider(new ListDataProvider<String>(items));
Binder<DemoColumns> binder = this.getEditor().getBinder();
// Col1 simple string
Binding<DemoColumns, String> col1Binding = binder.forField(col1).asRequired("Empty value not accepted").bind(DemoColumns::getCol1, DemoColumns::setCol1);
this.addColumn(DemoColumns::getCol1).setCaption("Col1").setExpandRatio(1).setEditorBinding(col1Binding);
// Col2 non-editable string
this.addColumn(DemoColumns::getCol2).setCaption("No Edits").setId("noedit").setHidable(true).setWidth(150);
// Col3 Integer
Binding<DemoColumns, Integer> col3Binding = binder.forField(col3).withNullRepresentation("").withConverter(new StringToIntegerConverter("Must enter a number")).withValidator(new IntegerRangeValidator("Input integer between 0 and 10", 0, 10)).bind(DemoColumns::getCol3, DemoColumns::setCol3);
this.addColumn(DemoColumns::getCol3).setCaption("Integer").setHidable(true).setWidth(150).setEditorBinding(col3Binding);
// Col4 Float
Binding<DemoColumns, Double> col4Binding = binder.forField(col4).withNullRepresentation("").withConverter(col4.getConverter("Must enter a number")).bind(DemoColumns::getCol4, DemoColumns::setCol4);
this.addColumn(DemoColumns::getCol4).setCaption("Float").setHidable(true).setWidth(100).setEditorBinding(col4Binding);
// Col 5 Integer
Binding<DemoColumns, Integer> col5Binding = binder.forField(col5).withNullRepresentation("").withConverter(new StringToIntegerConverter("Must enter a number")).withValidator(new IntegerRangeValidator("Input integer between 0 and 10", 0, 10)).bind(DemoColumns::getCol5, DemoColumns::setCol5);
this.addColumn(DemoColumns::getCol5).setCaption("Integer (2)").setHidable(true).setWidth(100).setEditorBinding(col5Binding);
// Col6 Integer(3)
Binding<DemoColumns, Integer> col6Binding = binder.forField(col6).withNullRepresentation("").withConverter(new StringToIntegerConverter("Must enter a number")).withValidator(new IntegerRangeValidator("Input integer between 0 and 10", 0, 10)).bind(DemoColumns::getCol6, DemoColumns::setCol6);
this.addColumn(DemoColumns::getCol6).setId("col6").setCaption("Col6").setHidable(true).setWidth(100).setEditorBinding(col6Binding);
// Col 7 DateTime
// Need a zoneoffset for datetimefield
OffsetDateTime odt = OffsetDateTime.now(ZoneId.systemDefault());
ZoneOffset zoneOffset = odt.getOffset();
SimpleDateFormat dateTimeFormat = (SimpleDateFormat) DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT, UI.getCurrent().getLocale());
Binding<DemoColumns, Date> col7Binding = binder.forField(col7).withConverter(new LocalDateTimeToDateConverter(zoneOffset)).bind(DemoColumns::getCol7, DemoColumns::setCol7);
this.addColumn(DemoColumns::getCol7).setCaption("Date Time").setWidth(180).setEditorBinding(col7Binding).setRenderer(new DateRenderer(dateTimeFormat)).setHidable(true);
// col 8 Date
Binding<DemoColumns, Date> col8Binding = binder.forField(col8).withConverter(new LocalDateToDateConverter()).bind(DemoColumns::getCol8, DemoColumns::setCol8);
SimpleDateFormat dateFormat = (SimpleDateFormat) DateFormat.getDateInstance(DateFormat.SHORT, UI.getCurrent().getLocale());
this.addColumn(DemoColumns::getCol8).setCaption("Date").setWidth(120).setEditorBinding(col8Binding).setRenderer(new DateRenderer(dateFormat)).setHidable(true);
// Col 9 Boolean
Binding<DemoColumns, Boolean> col10Binding = binder.forField(col9).bind(DemoColumns::getCol9, DemoColumns::setCol9);
this.addColumn(DemoColumns::getCol9).setCaption("Boolean").setHidable(true).setWidth(150).setEditorBinding(col10Binding);
// Col 10 Combobox.
Binding<DemoColumns, String> col11Binding = binder.forField(col10).bind(DemoColumns::getCol10, DemoColumns::setCol10);
this.addColumn(DemoColumns::getCol10).setCaption("Combobox").setHidable(true).setWidth(150).setEditorBinding(col11Binding);
for (int i = 0; i < 5; ++i) {
demoList.add(new DemoColumns());
}
demoData.refreshAll();
this.addItemClickListener(event -> {
System.out.println("Item click event happens: " + event.gereplacedem().toString());
});
this.setSizeFull();
// nav.setFocusedCell(2, 2, true);
this.select(demoList.get(2));
// this.setFrozenColumnCount(2);
this.appendHeaderRow();
for (Column<DemoColumns, ?> col : this.getColumns()) {
if (col.getId() == null || (col.getId() != null && !(col.getId().equals("noedit") || col.getId().equals("delete")))) {
CheckBox editable = new CheckBox();
editable.setValue(true);
editable.addValueChangeListener(event -> {
if (!getEditor().isOpen()) {
if (event.getValue()) {
col.setEditable(true);
} else {
col.setEditable(false);
}
} else if (event.isUserOriginated()) {
editable.setValue(!editable.getValue());
}
});
this.getHeaderRow(1).getCell(col).setComponent(editable);
}
}
}