如何设置Vaadin Time Picker为不可编辑状态
Vaadin TimePicker 禁用手动输入仅允许下拉选择的实现方法
Vaadin的TimePicker组件确实没有提供直接的setEditable(false)方法,但可以通过以下方式实现仅允许下拉选择、禁止手动输入的需求:
针对Vaadin 14+(Flow版本)
- 使用
setReadOnly(true)方法:这个方法会将输入区域设置为只读,用户无法手动输入时间,但仍然可以点击下拉箭头打开时间选择面板进行选择。这正是你需要的效果,可能之前你误解了该方法的作用——它并不会禁用下拉选择功能,只是锁定了手动输入的输入框。 - 如果需要更精细的控制,也可以通过操作组件的DOM属性实现:
timePicker.getElement().setProperty("readonly", true);
针对Vaadin 8(GWT版本)
在Vaadin 8中,你可以通过设置TimePicker的内部文本框为只读来实现:
timePicker.getTextField().setReadOnly(true);
这样文本框无法手动输入,而下拉选择功能依然可用。
注意:不要使用setEnabled(false),该方法会禁用整个组件(包括下拉按钮),不符合仅允许下拉选择的需求。
内容的提问来源于stack exchange,提问作者Md Yousuf Hossan
相关产品推荐
相关产品推荐

