【问题标题】:GWT: how to get FlexTable width?GWT:如何获得 FlexTable 宽度?
【发布时间】:2013-08-13 01:25:11
【问题描述】:

大家好)任务看起来很简单——获取 FlexTable 的宽度并将这个宽度设置为 ScrollPanel 以摆脱水平滚动条——直到我发现像 table.getElement().getClientWidth() 这样的任何方法都只返回 0。

也许我这样做的方式有问题 - 我创建表,用数据填充它然后调用 int tableHeight = table.getElement().getClientWidth(); 尽管表格本身在浏览器中看起来很正常并且它的宽度为 310 像素,但这个 int 为 0。

非常感谢您的帮助。

【问题讨论】:

    标签: gwt flextable


    【解决方案1】:

    如果你想得到一个 flextable 的宽度,你可以使用:

    table.getElement().getStyle().getWidth();
    

    但这只会返回设置的宽度。要设置宽度,您可以使用:

    table.setWidth();
    

    注意getWidth() 方法将返回您的表具有的任何 CSS width,无论它是否以编程方式设置。

    另外,getClientWidth() 只会在表格附加到父小部件后为您提供表格的宽度,这可能就是它为您返回 0 的原因。

    【讨论】:

    • 那么,我是对的 - 将此表附加到滚动面板后,它的 getClientWidth() 应该返回实际宽度吗?我想避免对宽度进行硬编码,因为我的 flextable 依赖于用户,因此它的大小可能因不同用户而异。最好的办法是用数据填充它,然后获取它的大小并将其放在滚动面板中,但我不确定它是否可能。
    猜你喜欢
    • 2016-05-29
    • 2015-10-25
    • 2011-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多