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 | 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 |
---|
|
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 |
---|
|
{"category":"2017","xvalue":559,"yvalue":"Beverages"}final Integer row = item.row();
for(int i = 0; i < this.model.columns().size(); i++)
{
final Cell value = this.model.getValue(row, item.column());
System.out.println(value.value());
}
|