我需要自定义小部件高度。我试图用这个GWT自定义小部件高度
Integer.toString(yourWidget.getElement().getOffsetHeight())
但是,
- 如果我用它当我创建它或将它添加到容器板,如果我在contrainer面板的
onLoad
使用它返回0 - 方法,它会在应用样式之前返回小部件高度
那么,何时应该在应用样式之后使用它来获取小部件高度?
非常感谢!
我需要自定义小部件高度。我试图用这个GWT自定义小部件高度
Integer.toString(yourWidget.getElement().getOffsetHeight())
但是,
onLoad
使用它返回0那么,何时应该在应用样式之后使用它来获取小部件高度?
非常感谢!
我不知道你是否已经解决了你的问题,但是使用JSNI的选项将确保小部件创建完成。
实现这一目标的一个方法是使用递延命令:
DeferredCommand.addCommand(new Command() {
public void execute() {
// Ask here for the height
}
});
我觉得onAttach或的onLoad会是一个好抓..
@Override
protected void onLoad() {
super.onLoad();
//do sth
}
THX您的回复,但有同样的问题,任何其他的想法??? – david 2010-07-20 00:41:19
Firebug这样的工具如何?它们显示您期望的价值还是高度保持不变? (有很多方法可以影响CSS的高度 - 并不总是像你期望的那样) – 2010-07-20 08:37:45
我记得我以前有一个相同的问题,并且不记得它是如何解决的。 ..基本上问题是,我试图改变高度,而小部件仍然没有完全构建...我会尽力找到代码... – markovuksanovic 2010-07-20 14:46:08
似乎是同一种问题,即一个在这里暴露:GWT - Retrieve size of a widget that is not displayed
他们使用JSNI做使用的解决方法他们想要什么,也许一个类似的诡计也适用于你。
Thx很多! ir完美无缺!但是DeferredCommand现在已被弃用,所以我使用了Scheduler.get()。scheduleDeferred(new ScheduledCommand(){... – david 2012-03-14 15:03:26