2011-08-22 90 views
2

我在portlet环境中使用vaadin,我们有特定的验证外观&的感受和行为。Vaadin如何更改默认验证功能

当输入字段的值无效,

  1. 其边界的颜色变为红色。
  2. 所有错误消息(作为链接)显示在上方或下方的公共位置。
  3. 点击具体的错误结果到光标焦点去相关的领域。

那么我怎样才能实现这个功能,我需要改变&修改。

回答

3

为了您的观点#1,您需要创建一个主题。要做到这一点,我建议你阅读Book of Vaadin章5-8

第5章解释与之相关的UI组件和CSS样式。 第8章解释如何继承css主题。

对于第2点,您必须在页面中添加一个布局,并且您将为每条消息创建一个按钮并将其设置为Web链接。

Button button = new Button("Your error message"); 
button.setStyle(BaseTheme.BUTTON_LINK); 
errorLayout.addComponent(button); 

对于点#3,将侦听器添加到您的按钮链接,并单击时,将该组件错误地集中。所以之前的代码现在看起来像这样

Button button = new Button("Your error message"); 
button.setStyle(BaseTheme.BUTTON_LINK); 
button.addListener(new Button.ClickListener(){ 
    public void buttonClick(ClickEvent event){ 
    // Replace componentInError by the associated component of the link. 
    componentInError.focus(); 
    } 
} 
errorLayout.addComponent(button); 

问候。 Éric