2

我有一个带有标签的网格,单击标签时我需要执行一个操作。

你知道我怎样才能做到这一点吗?我更喜欢使用标签监听器而不是可点击布局。我不想使用看起来像纯文本的按钮。

4

3 回答 3

3

你不能。Vaadin 标签没有任何点击侦听器 => 您不能直接侦听 Vaadin 标签上的点击(至少在不下降到客户端上的 javascript 的情况下不能)。

简而言之:如果您想知道一个组件(并且该组件不支持 ClickListener),可点击布局是规范的方法。

于 2013-02-14T12:00:08.647 回答
1

我想你没有办法com.vaadin.ui.Label并且com.vaadin.ui.Button.ClickListener你必须使用平面按钮。

于 2013-02-14T09:59:09.790 回答
1

有一种方法可以实现这一点:

final Label label= new Label("My clickable Label");
        myForm.addComponent(label);
        myForm.addLayoutClickListener(new LayoutClickListener() {
            @Override
            public void layoutClick(LayoutClickEvent event) {
                // capture click and do whatever you'd like to do
                if (event.getClickedComponent() != null) {
                    if (event.getClickedComponent().equals(label)) {
                        System.out.println("clicked!");
                    }
                }
            }
        });
于 2015-04-25T00:07:20.403 回答