【问题标题】:How to add TextChangeListener at RichTextArea in Vaadin如何在 Vaadin 的 RichTextArea 中添加 TextChangeListener
【发布时间】:2017-03-22 20:51:08
【问题描述】:
TextField searchField = new TextField();
searchField.addTextChangeListener(new TextChangeListener() {
    @Override
    public void textChange(TextChangeEvent event) {
        updateCharecterLeft();
    }
});

我想要一个 RichTextArea 而不是 searchField 。但 RichTextArea 没有 addTextChangeListener。请帮忙

【问题讨论】:

    标签: vaadin richtextarea


    【解决方案1】:

    RichTextArea 有 addValueChangeListener() 方法,它继承自 AbstractField

    RichTextArea richTextArea = new RichTextArea();
        richTextArea.addValueChangeListener(new Property.ValueChangeListener() {
            @Override
            public void valueChange(Property.ValueChangeEvent valueChangeEvent) {
                updateCharecterLeft();
            }
        });
    

    【讨论】:

    • 是的,但是当我键入每个字符时这不起作用。只有工作重心的改变。我想在单独的标签中显示剩余的字符。每次用户在其上输入字符。
    • 尝试设置 setImmediate(true);
    • SetImmidiate 真正的工作与焦点的变化。不是在键盘的每次击键中。 :(
    【解决方案2】:

    试试这个:

    textArea.setImmediate(true);
    textArea.setTextChangeEventMode(TextChangeEventMode.EAGER);
    textArea.addTextChangeListener(new TextChangeListener(){
    
            @Override
            public void textChange(TextChangeEvent event) {
                // use event.getText() 
            }       
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-16
      相关资源
      最近更新 更多