A kód ebben a leckében sokkal rövidebb mint az előzőben, mivel ez csak azt célozza, hogy bemutassa hogyan működik a HighlightManager.
Tutorial3a.java
Tutorial3a.class
Valójában csak a következő új sorok érdekesek ebben a példában:
HighlightManager highlightManager = new HighlightManager();
theme.setHighlightManager(highlightManager);
Az applet mező:
|
A végső cél cél, hogy a térképet más típusú objektumokhoz kapcsoljuk, mint például táblázatok vagy grafikonok, és lehetővé tegyük interakciót közöttük.
A pie chart demo, például egy térképet és egy kördiagrammot mutat be, melyeket egy közös HighlightManager köt össze.
Az applet mező ugyanaz mint korábban, de egy plusz paraméter került hozzá, az
oszlop neve melynek tartalma megjelenik a felirat mezőben:
Tutorial3b.java
Tutorial3b.class
Csak 3 számunkra érdekes plusz sor van ebben a példában:
Először egy GeoLabel-t készítünk a shape .dbf fájl egy oszlopának felhasználásával.
String labelCol = getParameter("labelCol");
label = new GeoLabel(loader.readData(labelCol));
...
highlightManager.addHighlightChangedListener(label);
A GeoLabel implementálja aHighlightChangedListener interfészt, mely jelenleg nagyon egyszerű, csak egy metódust spacifikál:
void highlightChanged(HighlightChangedEvent hce);
Minden esetben amikor egy új elembe lép az egér kurzor a highlightChanged meghívásra kerül és a hce objektum használható az aktuális elem azonosítójának (ID) kitalálásához.
hce.getID();