它俩通常是给Text控件使用的,用户输入变化时会触发这两个事件。
VerifyListener
用于校验输入是否有效,由e.doit来确定,如果e.doit为true,则输入成功;如果e.doit为false,则不允许输入。下面的例子,不允许输入字母“s”。
comboViewer.getCombo().addVerifyListener(new VerifyListener() { @Override public void verifyText(VerifyEvent e) { // Prevent from inputing letter "s". e.doit = !"s".equals(e.text); } });
ModifyListener
只要UI上显示有输入,则会触发此事件。如果同时还有VerifyListener,则在e.doit=true时,才会触发ModifyListener。也就是真正有修改,才会触发此事件。
comboViewer.getCombo().addModifyListener(new ModifyListener(){ @Override public void modifyText(ModifyEvent e) { System.out.println("Input changed."); } });