介绍用C#编写Winform桌面窗体程序,介绍System.Windows.Forms空间下的Clipboard类的使用,和注意事项。
工具/原料
1
Visual Studio 2015
2
.NET Framework 2.0
方法/步骤
1
首先,要判断剪切板是否含有文字,使用Clipboard.CotainsText函数。
2
接下来,使用Clipboard.GetText()函数获取字符串。然后使用String.IsNullOrEmpty判断字符串是否可用。IsNullOrEmpty(s)等价于 s!=null&&s!=''
3
如图是一个范例程序运行获取剪切板内容的效果。程序无需获取焦点。可以在事件中处理,也可以使用Timer,定时检查剪切板。
4
使用Clipboard.ContainsImage判断剪切板是否存在bitmap图片。注意,这里从剪切板得到的图片是Bitmap格式,比较耗费内存。
5
接下来使用Clipboard.GetImage获取图片并转化为Image对象。然后判断img是否为null,再使用。如图是程序从剪切板获取图像效果。
6
使用Clipboard.Clear函数移除剪切板内容,包括图片,文字或者其它形式的数据。
7
使用Clipboard.SetImage(Image对象),将Image设置到剪切板。使用SetText设置字符串到剪切板。这些相当于复制操作。用法和注意事项如图。
注意事项
从Clipboard获取Image对象后,如果不需要再使用,需要即时调用Dispose清理。否则由于Bitmap占用内存高,会占用大量内存,而GC清理不及时。