TextItem в GWT с десятичной проблемой - PullRequest
0 голосов
/ 09 июля 2010

Я думаю, что это может быть очень просто, но это поглощает мое время.

Я использую TextItem In GWT в своем приложении JAVA для получения ввода цены от пользователя.

Я пытаюсь прекратить использование более чем одной точки (".") Для текстового элемента. Все мои упражнения провалились. Я использую регулярное выражение; Попробуйте обработать ключевые символы для события BlurHandler в TextItem и перетащите меня неправильно.

Кто-нибудь может мне помочь в достижении вышесказанного? Заранее спасибо.

1 Ответ

0 голосов
/ 09 июля 2010

Примерно так я и использую:

amount = new TextBox();
amount.setVisibleLength(10);
amount.addKeyPressHandler(new KeyPressHandler() {
    public void onKeyPress(KeyPressEvent event) {
       if (!checkNumeric(amount.getText(), event.getCharCode()))
          amount.cancelKey();
       }
});


public boolean checkNumeric(String text, char keycode) {
    if (!Character.isDigit(keycode) && keycode != '.' && keycode != '-'
       && keycode != KeyCodes.KEY_BACKSPACE
       && keycode != KeyCodes.KEY_TAB) {
       return false;
    }
    if (keycode == '-') {
        if (!text.isEmpty()) {
            return false;
        }
    }
    if (keycode == '.') {
        if (text.contains(".")) {
            return false;
        }
    }

    return true;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...