【问题标题】:Vaadin ComboBox invisible when readonlyVaadin ComboBox 只读时不可见
【发布时间】:2012-05-03 15:11:31
【问题描述】:

为什么在执行 setReadOnly(true) 时 Vaadin ComboBox 变得不可见?

截图

正常

隐形

源代码

import java.util.List;   
import com.vaadin.ui.ComboBox;

public class PropertyComboBox extends ComboBox
{
    public PropertyComboBox(List<String> properties)
    {
        super();
        for(String property: properties) {this.addItem(property);}
        this.setImmediate(true);
        this.setMultiSelect(false);

        this.setNewItemsAllowed(false);
        this.setInputPrompt("Property");
        this.setReadOnly(true);
    }
}

【问题讨论】:

    标签: combobox vaadin readonly invisible


    【解决方案1】:

    如果您尝试创建一个用户无法在其中写入任何内容的组合框,请查看NativeSelect 组件。

    来自 API 文档:

    这是一个简单的下拉选择,例如,不支持多选、新项目、延迟加载和其他高级功能。有时,没有 ComboBox 的所有花里胡哨的“原生”选择是更好的选择。

    如果您不需要这些功能,那么您应该明确考虑使用 NativeSelect。

    【讨论】:

      【解决方案2】:

      当您将所有组件设置为只读时,它们都会“不可见”。我找不到任何原因,我也想知道。

      我的建议(有点老套):禁用组件并在 CSS 中更改它们的禁用外观。

      【讨论】:

        【解决方案3】:

        Nexus 是对的,当设置为只读时组件变得不可见。实际上设置为只读添加“v-readonly”css 类名,其余的由 CSS 完成。

        问候。

        【讨论】:

          猜你喜欢
          • 2018-03-09
          • 1970-01-01
          • 2011-11-15
          • 2014-03-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-06-03
          相关资源
          最近更新 更多