gpt4 book ai didi

java - Java 端元素的 GWT 高度始终为 0

转载 作者:行者123 更新时间:2023-12-02 05:34:41 27 4
gpt4 key购买 nike

我可能有一个愚蠢的问题,请原谅,但我只使用 GWT 1 个月。

我想使用使用另一个面板的面板高度,但我得到了 0 值:

FlowPanel first = new FlowPanel();
Label flexLabel = new Label("some content");
Button button = new Button();

first.add(flexLabel);
first.add(button);


FlowPanel second = new FlowPanel();
second.setHeight(first.getElement().getClientHeight()); // set 0 value always

为什么我总是得到 0 ??我知道 GWT 引擎在运行时将 java 代码转换为 javascript 时设置此值,但为什么它没有设置适当的值?我该如何解决这个问题?

最佳答案

GWT 中的所有小部件(包括面板)的大小都为零,直到浏览器完成渲染它们为止。

您有两个选择。

  1. 渲染您的布局。然后询问延迟调度程序命令中第一个面板的高度(在此处了解更多信息:GWT: Timer and Scheduler Classes)。使用此高度来调整第二个面板。幸运的是,在生产模式下,这一切发生得非常快,因此用户不太可能注意到它。

  2. 如果您想并排放置这些面板,可以使用 LayoutPanel 或 Horizo​​ntalPanel 来实现相同的效果。

关于java - Java 端元素的 GWT 高度始终为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25122812/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com