【问题标题】:how to disable pasting in one of the gwt textbox如何在 gwt 文本框之一中禁用粘贴
【发布时间】:2023-07-03 06:41:02
【问题描述】:

我有两个文本框,我只想禁用其中一个来粘贴任何内容。我试过了

 sinkEvents( Event.ONPASTE ); 

但它禁止粘贴两个文本框。

【问题讨论】:

  • 你是在两个文本框之一上调用 sinkEvents 吗?
  • sinkEvents 本身不应该禁用任何一个 - 你还在做什么,你在调用什么 sinkEvents?
  • @Fedy2 : 我在我的 uibinders 视图类构造函数中调用 sinEvents。

标签: gwt textbox event-handling uibinder onpaste


【解决方案1】:

尝试创建一个自定义 TextBox,您必须在其中覆盖 onBrowserEvent 函数。

public TextInput() {
    super();

    sinkEvents( Event.ONPASTE );
}

@Override
public void onBrowserEvent(Event event) {
    super.onBrowserEvent( event );

    switch (DOM.eventGetType(event)) {
        case Event.ONPASTE:
            event.preventDefault();
            break;
    }
}

【讨论】: