BBS水木清华站∶精华区
欲在Java中读取系统剪裁板的信息,遍查Java提供的类,未找到办法。
∶ 请高手指点。希望能使用与平台无关的特性,以便跨平台使用.
∶ 在Java中能对clipBoard操作吗?
在 JDK 1.1 中增加了对 clipboard 操作的类。
这儿有一个简单的例子,在JDK 1.1下使用:
import java.awt.datatransfer.*;
class MyClass extends TextArea implements ClipboardOwner {
... //instance variables
Clipboard clipboard = getToolkit().getSystemClipboard();
void copy() { //copy some text to clipboard
String srcData = getSelectedText();
if (srcData != null) {
StringSelection contents = new StringSelection(srcData);
clipboard.setContents(contents, this);
}
}
void paste() { //paste text in the clipboard to the textarea
Transferable content = clipboard.getContents(this);
int insertPos = xxx; // initiates the inserting position
if (content != null) {
try {
String dstData = (String)content.getTransferData(
DataFlavor.stringFlavor);
insert(dstData,insertPos);
} catch (Exception e) {
System.out.println("Couldn't get contents in format: "+
DataFlavor.stringFlavor.getHumanPresentableName());
}
}
}
/** Implements the method in the interface ClipboardOwner */
public void lostOwnership(Clipboard clipboard, Transferable contents) {
System.out.println("Clipboard contents replaced");
}
}
BBS水木清华站∶精华区