我有以下似乎很简单的问题,但我已经花了2个多小时而无法解决。
看下面的例子。
public class HeaderForm extends VerticalPanel
{
public HeaderForm()
{
Label label = new Label("Some text here which should be visible");
this.add(lable);
}
}
这是入口
public class SomeApp implements EntryPoint
{
public void onModuleLoad()
{
HeaderForm instance = new HeaderForm();
RootPanel.get().add(instance);
}
....之后,我们应该看到标签文本,对吗?但是什么都没有
如果我做同样的事情但直接没有包装类的话,这对我来说很奇怪……它很好用。
请,建议..如此简单,但不起作用。
最佳答案
我相信您想要做的是创建一个新的Widget。
您的类HeaderForm应该扩展Composite,然后可以创建VerticalPanel并为其添加标签。
然后使用initWidget初始化VerticalPanel。
public class HeaderForm extends Composite
{
public HeaderForm()
{
VerticalPanel verticalPanel = new VerticalPanel();
Label label = new Label("Some text here which should be visible");
verticalPanel.add(label);
initWidget(verticalPanel);
}
}
现在,您可以在EntryPoint中创建自定义窗口小部件的实例。
如果我有任何错误,请指正。
如果要向VerticalPanel添加其他内容,可以使函数返回VerticalPanel或直接向其添加其他小部件。
希望这解决了您的问题:)
干杯!