我想在 GWT 中处理粘贴事件并捕获粘贴的文本 TextBox
。正如我所检查的那样,TextBox
中没有粘贴事件的标准处理程序。
最佳答案
我发现可以通过添加一些 javascript native 代码来实现:
public class PasteAwareTextBox extends TextBox {
public PasteAwareTextBox() {
super();
sinkEvents(Event.ONPASTE);
}
@Override
public void onBrowserEvent(Event event) {
super.onBrowserEvent(event);
switch (event.getTypeInt()) {
case Event.ONPASTE:
onPasted(getClipboardData(event));
break;
}
}
private void onPasted(String clipboardData) {
System.out.println("Pasted:" + clipboardData);
}
private static native String getClipboardData(Event event) /*-{
return event.clipboardData.getData('text/plain');
}-*/;
}
1) 订阅粘贴事件。
2) 通过JSNI调用event.clipboardData.getData('text/plain');
关于java - 在 GWT 文本框中捕获粘贴的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31538530/