A way for Vaadin to obtain the Top, Left, Width, and Height of controls

Get the information of the currently clicked control by adding event listener.

According to the attribute of element in html  https://www.w3school.com.cn/jsref/dom_obj_all.asp

import com.vaadin.flow.dom.DomEvent;
import elemental.json.JsonObject;

Tab tab = new Tab("my tab");
tab.getElement().addEventListener("click", this::handleClick)
    .addEventData("element.offsetTop")
    .addEventData("element.offsetLeft")
    .addEventData("element.offsetWidth")
    .addEventData("element.offsetHeight")
    .addEventData("element.id");

private void handleClick(DomEvent event) {
    JsonObject eventData = event.getEventData();
        double top = eventData.getNumber("element.offsetTop");
        double left = eventData.getNumber("element.offsetLeft");
        double width = eventData.getNumber("element.offsetWidth");
        double height &

Guess you like

Origin blog.csdn.net/leon_founder/article/details/103125937