0
我創建了一個TextField
與TextChangeListener
。當用戶鍵入某些值(在本例中爲'admin')時,則在該字段上調用addStyleName
,並且字體顏色變爲紅色。但之後,該值爲空,並且每個輸入的字符都被清除。
這裏是應用程序的代碼。爲什麼在TextField
增加新款式後其價值發生變化?Vaadin addStyleName問題
public class VaadintestApplication extends Application {
@Override
public void init() {
Window mainWindow = new Window("Vaadintest Application");
setTheme("test");
TextField textField = new TextField("username");
textField.setEnabled(true);
textField.setTextChangeEventMode(TextChangeEventMode.EAGER);
textField.addListener(new TextChangeListener() {
public void textChange(TextChangeEvent event) {
if ("admin".equals(event.getText())) {
((TextField) event.getComponent()).addStyleName("text-error");
} else {
((TextField) event.getComponent()).removeStyleName("text-error");
}
}
});
mainWindow.addComponent(textField);
setMainWindow(mainWindow);
}
}