将Vaadin Designer连接到Java代码

时间:2016-04-28 12:20:40

标签: java user-interface vaadin

我真的需要你帮助解决Vaadin Designer的问题。 我在Designer的帮助下开发了自己的UI。到目前为止这么好,看起来就像我希望它看起来一样。但是现在,我在哪里可以获得我可以编辑的源代码,以便说出在例如什么时候应该发生什么。按下按钮?我的项目中只有以下类: anotherDesign(我在其中创建了UI), anotherDesign(自动生成,但不得编辑)和 MyUI(标准类)。

所以如果有人看到我的观点并且可以帮助我,那就太好了。可能只是因为我是设计师的新手,需要一些一般信息和帮助。

无论如何,

西蒙

2 个答案:

答案 0 :(得分:1)

FF0000是完全正确的,因为您需要扩展自动生成的伴随Java文件。让我们举一个简单的例子:您在VerticalLayout中有一个Button,MyDesign.html中的声明格式如下所示:

<vaadin-vertical-layout size-auto> 
    <vaadin-button plain-text _id="button">
        Button 
    </vaadin-button> 
</vaadin-vertical-layout>  

然后你的Java伴随文件MyDesign.java看起来像是:

@DesignRoot
@AutoGenerated
@SuppressWarnings("serial")
public class MyDesign extends VerticalLayout {
    protected Button button;

    public TestDesign() {
        Design.read(this);
    }
}

然后,为了向Button添加单击侦听器,您可以扩展Java类并访问该按钮。例如:

public class MyDesignComponent extends MyDesign {

    public MyDesignComponent() {
        button.addClickListener(e -> Notification.show("Hello world!"));
    }
}

最后在您的用户界面中,您可以像使用任何其他Vaadin组件一样使用MyDesignComponent,例如:

public class MyUI extends UI {

    @Override
    protected void init(VaadinRequest vaadinRequest) {
        setContent(new MyDesignComponent());
    }
    ...

答案 1 :(得分:0)

您编写了一个扩展自动生成类的类:

AnotherDesignExt extends AnotherDesign