Jedes Chart verfügt über eine ValueChangedEvent SelectionChangeEvent, welches bei einer Selektion getriggert wird. Das Eventobjekt im nachfolgenden Beispiel "String json" trägt dann alle Informationen zur jeweiligen Selektion in sich.Im Eventobjekt befinden sich die RowID. Mithilfe der RowID kann dann im Model die richtige Zeile mit dessen Informationen aufgerufen werden. Damit später auch aus dem Event heraus auf das Model zugegriffen werden kann, ist es sinnvoll sich das Model als Field innerhalb der Klasse zu deklarieren und zuzuweisen.
Abrufen der RowID und ColumnID des selektierten Eintrags
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
import com.xdev.charts.AbstractXdevChart.ValueChangeListener;
chart.addValueChangeListener(new ValueChangeListener() {
@Override
public void valueChange(String json) {
// Fügen Sie hier Ihren eigenen Eventcode hinzu
}
}); |
JSON-Inhalt nach Charts
XdevBarChart
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"category":"2017","xvalue":559,"yvalue":"Beverages"} |
XdevAreaChart, XdevLineChart, XdevComboChart, XdevColumnChart, XdevSteppedChart
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"category":"xdev","xvalue":"2017","yvalue":3500} |
XdevPieChart
Code Block |
---|
language | xmlprivate void barChart_onSelection(final SelectionEvent<AbstractChart> event)
{
final Selection selection = event.getSelection();
final List<Item> items = selection.items();
for(final Item item : items)
{
final Integer row = item.row();
final Integer column = item.column();
}
} |
---|
Mit Hilfe der RowID und ColumnID den Eintrag im Model finden
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"category":"Hund","value":50} |
XdevTimeLineChart
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"category":"Sebastian","caption":"","start":"2018-07-08T22:00:00.000Z","end":"2018-07-24T22:00:00.000Z"} |
XdevMapChart
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"address":"Kreuzgasse 19 91275 Auerbach","caption":"Heimat"}
{"latitude":37.4289,"longitude":-122.1697,"caption":"University"} |
XdevGeoChart
"final XdevGeoChartModel model = new XdevGeoChartModel("country", "people");"
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"country":"US","people":85000} |
XdevOrgChart
Code Block |
---|
language | xml |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
{"value":"XDEV Software","root":"","tooltip":""} |
JSON-INhalt wieder auf ein Chartobjekt mappen
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
final Gson g = new Gson();
final BarChartObject fromJson = g.fromJson(json, BarChartObject.class); |
...
final Integer row = item.row();
final Integer column = item.comlumn();
final Cell value = this.model.getValue(row, column);
Object rowValue = value.value(); |
Alle Einträge nach RowID aus dem Model holen
Code Block |
---|
language | java |
---|
theme | Eclipse |
---|
firstline | 1 |
---|
linenumbers | true |
---|
|
final GsonInteger grow = new Gsonitem.row();
final
BarChartObjectfor(int fromJsoni = g.fromJson(json, BarChartObject.class);
Integer xvalue = fromJson.getXvalue();
String yvalue = fromJson.getYvalue();
String category = fromJson.getCategory(); 0; i < this.model.columns().size(); i++)
{
final Cell value = this.model.getValue(row, item.column());
System.out.println(value.value());
}
|