我能够为nattable实现复制粘贴功能,它在nattable内完美运行,也适用于其他内部nattable。但是无法粘贴外部系统的数据。我试图扩展Copyhandler和Paste handler.But i我无法从系统剪贴板获取数据。请帮助我。
答案 0 :(得分:1)
要在以前从Excel复制数据时从系统剪贴板获取数据,您可以尝试使用以下代码:
final Clipboard cb = new Clipboard(Display.getCurrent());
Button paste = new Button(buttonPanel, SWT.PUSH);
paste.setText("Paste");
paste.addListener(SWT.Selection, new Listener() {
@Override
public void handleEvent(Event e) {
TextTransfer transfer = TextTransfer.getInstance();
String data = (String) cb.getContents(transfer);
if (data != null) {
System.out.println(data);
}
}
});
您只需从系统剪贴板获取数据并解释它以匹配您的NatTable结构。您需要注意Excel将新行字符和制表符添加为分隔符,以便您能够正确解析数据。