如何让输入框显示红框?

请问如何自动通过代码让输入框显示红色(就和系统默认的校验错误效果一样)?

有大佬关注一下么?

不知道你具体的需求是什么?红框就是个 border 样式,在代码中需要的地方设置一下即可。

就是我想通过代码来实现系统校验时候提示的那个效果,有对应的API吗

是否试过:ComponentsHelper.fillErrorMessages API

没有,不知道有这个API。话说这些API的使用是在哪里可以查阅?好像开发文档里没提到。

ValidationErrors errors=new ValidationErrors();
            ComponentsHelper.fillErrorMessages(bucketField,new ValidationException("图片库不允许为空"),errors);
screenValidation.showValidationErrors(this, errors);

我是这样用的,效果是可以提示消息,控件也会获得焦点,但是边框并没红。用法不对么?

试试 Component 的validate() 方法。
如果要进行自定义验证,可以使用 验证器控件
示例:
https://demo.cuba-platform.cn/sampler/#main/3/sample?id=validator-textfield

try {
                bucketField.validate();
            }catch (ValidationException ve){
                ValidationErrors errors=new ValidationErrors();
                ComponentsHelper.fillErrorMessages(bucketField,ve,errors);
                screenValidation.showValidationErrors(this, errors);
                return;
            }

成功了,谢谢!

1 个赞