谁能大概解释下java复制图像到剪贴板的原理?

来源:百度知道 编辑:UC知道 时间:2024/06/23 23:01:06
jButton10.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {

Rectangle rect = paintPanel.getBounds();
BufferedImage bufImage = new BufferedImage(rect.width,
rect.height,
BufferedImage.TYPE_INT_RGB);
Graphics g = bufImage.getGraphics();
g.translate(-rect.x+TabbedPaneW, -rect.y+ToolBarH);
paintPanel.paint(g);
g.dispose();

setClipboardImage(bufImage);
{JOptionPane.showMessageDialog(
null, "已将图像复制到剪贴板", "函数图像绘制系统", JOptionPane.INFORMATION_MESSAGE);//弹出提示对话框,要求输入数字
}

}
});

protected static void setClipboardImage(final Image image) {
Transferable trans = new Transferable(){

把图片放到容器里,然后装入dataHandler,设置到剪贴板,就可以了。这个是很方面自己定义的对象也可以装入剪贴板,只要是对象都可以的。

Vector<Object> data = new Vector<Object>();
data.add(image);
DataHandler dataHandler = new DataHandler(data, "application/x-java-serialized-object; class=java.util.Vector");
clipBoard.setContents(dataHandler, strings);
这样就可以了。。
把图片放到容器里,然后装入dataHandler,设置到剪贴板,就可以了。这个是很方面自己定义的对象也可以装入剪贴板,只要是对象都可以的。

这些系统函数的作用你自己看下api吧,不明白就去google找代码sample,别百度,直接上英文的google找,百度在代码查询上的确不如google。中文api里面系统函数的解释都很清楚了,不明白就看源代码。别人给你说也是对着api来给你忽悠的,不如直接自己看源代码。这是最直接的方式,如果你看不懂源代码就去好好看下基础吧,基础是根本!~