我想 Application 类已从 Vaadin 中删除7 和 setMainWindow()
不再有效。
public class MyApplication extends Application { //ERROR coz there's no Application class
public void init() {
Window mainWindow = new Window("My Application");
setMainWindow(mainWindow); //Error setMainWindow not defined
mainWindow.getContent().setSizeFull();
MyComposite myComposite = new MyComposite();
mainWindow.addComponent(myComposite);
}
}
虽然上述代码在 Vaadin 6 中有效,但在 Vaadin 7 中无效。有人知道如何解决这个问题吗?使用什么类而不是应用程序?请帮忙
最佳答案
新建 UI
类
你应该扩展com.vaadin.ui.UI
在 Vaadin 7 .此类表示显示 Vaadin 应用程序的 Web 浏览器窗口/选项卡(或 portal viewport)的整个内容区域。每个 Vaadin 应用程序都有一个 UI 实例;打开的其他窗口每个都有一个 UI 实例。
有关更多信息,请查看维基页面,Migrating from Vaadin 6 to Vaadin 7 .
该指南中的第一个示例显示了 Vaadin 6 和 7 中的最小应用程序,如下所示。
Vaadin 7
第 7 版应用扩展 UI
类。
import com.vaadin.server.VaadinRequest;
import com.vaadin.ui.*;
@Theme("mytheme")
public class MyApplicationUI extends UI {
@Override
protected void init(VaadinRequest request) {
VerticalLayout view = new VerticalLayout();
view.addComponent(new Label("Hello Vaadin!"));
setContent(view);
}
}
Vaadin 6
第 6 版应用扩展 Application
类。
import com.vaadin.Application;
import com.vaadin.ui.*;
public class V6tm1Application extends Application {
@Override
public void init() {
Window mainWindow = new Window("V6tm1 Application");
Label label = new Label("Hello Vaadin!");
mainWindow.addComponent(label);
setMainWindow(mainWindow);
setTheme(“mytheme”);
}
}
关于java - 替换 Vaadin 7 中的应用程序类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15276832/