系统剪切板:
系统剪切板一般支持String文本类型和Image图像类型:
String文本类型
插入:
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();//获取系统剪切板 String str = "哈哈";//设置字符串 StringSelection selection = new StringSelection(str);//构建String数据类型 clipboard.setContents(selection, selection);//添加文本到系统剪切板
获取:
Transferable content = clipboard.getContents(null);//从系统剪切板中获取数据 if (content.isDataFlavorSupported(DataFlavor.stringFlavor)) {//判断是否为文本类型 String text = (String) content.getTransferData(DataFlavor.stringFlavor);//从数据中获取文本值 if (text == null) { return; } System.out.println(text); }
自定义剪切板:
首先需要写一个数据类:
public class TestSelection implements Transferable, ClipboardOwner { public static final DataFlavor rangeFlavor = new DataFlavor(RangeDataModel.class, "Report Range");//class为自定义的java类 字串随便 private static final DataFlavor[] flavors = { rangeFlavor }; private Object data; public TestSelection(Object data) { this.data = data; } @Override public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException { if (flavor.equals(flavors[RANGE])) { return data; } else { throw new UnsupportedFlavorException(flavor); } } @Override public DataFlavor[] getTransferDataFlavors() { return (DataFlavor[]) flavors.clone(); } @Override public boolean isDataFlavorSupported(DataFlavor flavor) { for (int i = 0; i < flavors.length; i++) { if (flavor.equals(flavors[i])) { return true; } } return false; } @Override public void lostOwnership(Clipboard clipboard, Transferable contents) { // TODO Auto-generated method stub } }
然后就是设置值:
Clipboard clipboard = new Clipboard("clipboardName");//创建自定义剪切板对象 ReportSelection content = new ReportSelection(data);//构建数据对象 data为数据类型java类的对象 clipboard.setContents(content, null);
获取值:
Transferable content = clipboard.getContents(null);//注意 自定义剪切板必须给null参数 if (content.isDataFlavorSupported(ReportSelection.rangeFlavor)) { RangeDataModel data = (RangeDataModel) content.getTransferData(ReportSelection.rangeFlavor); System.out.println(data); }
发表评论
-
Linux下web项目中File地址错误问题
2014-07-21 12:42 655String path = servletContext.g ... -
Spring MVC 表单提交 405
2014-05-05 10:17 1069Spring MVC post表单提交后返回页面报错:405 ... -
HttpSession清空
2014-04-30 13:41 1042// 销毁session session.invalid ... -
java.io.InvalidClassException异常处理
2013-07-16 16:27 16403java.io.InvalidClassException ... -
发布应用后出现问题的处理思路
2012-07-05 12:11 807发布后的应用,源码都被打成了jar包,无法进行debug,如果 ... -
HTTP404 There is no Action mapped for namespace / and action name login.
2012-06-19 12:04 1602Web项目采用SSH架构,偶尔报“There is no Ac ... -
net.sf.cglib.core.CodeGenerationException: 异常处理
2012-06-12 14:36 0做流程引用了JBPM3的包,在发布的时候经常会报一个异常: ... -
MyEclipse下有main函数类运行报错:Editor does not contain a main type
2012-03-31 10:59 5068出现这种问题的原因是,该java文件所在的包没有被MyEcl ... -
apache.commons.lang2.3学习笔记-CharEncoding
2011-12-06 21:40 938public class TestCharEncodin ... -
apache.commons.lang2.3学习笔记-ChartSetUtils
2011-12-06 21:29 1100public class TestChartSetUti ... -
apache.commons.lang2.3学习笔记-BooleanUtils
2011-12-06 21:28 1385public class TestBooleanUtil ... -
apache.commons.lang2.3学习笔记-ArrayUtils
2011-12-06 03:18 2238public class Lang { class B ... -
【转】使用Swing皮肤机制 更换皮肤
2011-09-30 08:43 1886转自:http://tech.ddvip.c ... -
【转】Date类学习总结(Calendar Date 字符串 相互转换 格式化)
2011-08-18 20:09 864Date类学习总结 1.计算某一月份的最大天数 Ca ... -
BigDecimal设置精度
2011-06-17 09:16 12818public BigDecimal setScale ... -
DecimalFormat用法 数字类型文本格式转化
2011-05-18 22:38 2337//String custom="#,###,00& ... -
【转】Java中颜色的String和Color对象之间的互相转换
2011-05-06 13:18 2547package org.signsmile; impor ... -
@incolue org.apache.jasper.JasperException处理
2011-05-05 13:15 902在jsp中 使用include 可能发生以下异常: org. ... -
org.apache.commons.collections.MultiMap 使用范例
2011-04-23 09:15 1758MultiMap map = new MultiValueM ... -
JAVA数字格式化
2011-04-22 09:44 846java.text.DecimalFormat df = ne ...
相关推荐
Clipboard Box将大幅增强您剪切板的能力。现在您有一个简单方便的工具,对您经常使用的功能(即复制粘贴)将非常有帮助。除了简单性外,软件还可以保存许多个剪切板项目而不仅仅是Windows常规的只保存一个。软件有很...
使用系统剪切板ClipBoard类对文本进行Cut和Paste
用SWT 组建实现的剪切板实例ClipboardExample
使用C#进行屏幕截图并自动保存到剪切板 主要用到Clipboard Graphics Rectangle Screen等
易语言剪切板操作源码,剪切板操作,清空,格式是否有效,置内容,取内容,EmptyClipboard,OpenClipboard,CloseClipboard,SetClipboardData,GetClipboardData,IsClipboardFormatAvailable,GlobalAlloc,GlobalFree,...
将文本复制到剪切板是前台js的事,但是浏览器众多,怎么才能兼容各种版本的浏览器,让我们轻松写出一键复制到剪切板的js代码.这时就该clipboard.js出场了. clipboard.js是一个github上的开源项目,clipboard.js 实现了...
本文实例讲述了C#操作Clipboard读取剪切板中数据的方法。分享给大家供大家参考。具体分析如下: 1 自定义一个类,并且保证它的可序列化的:实现ISerializable接口;或者用[Serializable]标记(如果有父类,则父类也...
清空剪切板ClearOfficeClipboard类,可用在Excel的VBA中
C#做的各剪切板查看复制工具,VS2008编译的。
剪切板查看 clipboard viewer,查看剪切板中有那些格式,并可以查看每种格式的内容。默认显示CF_UNICODETEXT,CF_HTML,CF_BITMAP的内容 标签:Clipboard
复制文字到剪切板功能,兼容各种浏览器,非常实用
用Delphi写的从剪切板获取图片Base64String的ActiveX插件 图片Base64String可以用于将剪切板中的图片保存至服务器,省去用户手动保存图片的麻烦。
# python读取剪切板内容 import win32clipboard as w import win32con def get_text(): w.OpenClipboard() d = w.GetClipboardData(win32con.CF_TEXT) w.CloseClipboard() return d.decode('GBK') de
剪切板复制 JS插件 clipboard.min.js
剪切板操作.版本 2 .程序集 剪切板操作 .子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用 ' .子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用 ' ...
剪切板编程,完全功能 内容包含剪切板相关内容及文件操作
原需求是 监视Excel表格中的关键数据,截取后做...3、处理 WM_DRAWCLIPBOARD 剪切板数据改变消息:OpenClipboard,EnumClipboardFormats,GetClipboardData……CloseClipboard。 4、退出时释放ChangeClipboardChain。
使用js控制剪切板的4种方式的demo。点击按钮后,自动复制浏览器地址链接的、复制输入框内的值到剪切板。
除了一个剪切板应用的测试程序,附加一个剪切板各种使用的文档说明,文档内容也是在网上搜集所得,拿来与大家分享
1、Clipboard History Pro具有简单的复制功能 2、提供多种配置方式,可以多次监控剪贴板 3、支持读取Windows的剪贴板文字 4、可以在粘贴的时候进入配置 ... 7、支持插入当前日期和时间、删除剪切板内容