图像拷贝和粘贴-使用剪贴板

在C#中通过Clipboard类实现,其常用方法有:

1>SetDataObject(object[,bool])--用于将图像或文本信息发送到剪贴板

2>GetDataObject()--用于从剪贴板获取数据,它返回一个IDataObject对象,使用该对象从剪贴板获取数据。首先使用IDataObject的GetDataPresent方法检测剪贴板存放的是什么类型的数据,然后使用IDataObject的GetData方法获取剪贴板上相应数据类型的数据。

eg:从剪贴板获得字符串并在TextBox控件显示出来:

IDataObject iData=Clipboard.GetDataObject();
if(iData.GetDatPresent(Format.Text))
{
    textBox1.SelectedText=iData.GetData(DataFormats.Text).ToString();
}

OK,下面我们写程序实现Clipboard对象进行拷贝和粘贴

新建项目:选择windows窗体应用程序

添加控件:两个图片框pictureBox1和pictureBox2,两个按钮button1和button2

双击button1,添加复制事件处理程序

 private void button1_Click(object sender, EventArgs e)
        {
            //使用Clipboard对象将pictureBox1的图像拷贝到剪贴板
            Clipboard.SetDataObject(pictureBox1.Image);
        }

双击button2,添加粘贴事件处理程序

  private void button2_Click(object sender, EventArgs e)
        {
            //将剪贴板内容粘贴到pictureBox2
            IDataObject iData = Clipboard.GetDataObject();
            if (iData.GetDataPresent(DataFormats.Bitmap))
            {
                pictureBox2.Image = (Bitmap)iData.GetData(DataFormats.Bitmap);
            }
        }

下面就是我们的运行结果了,

初始界面:图片是pictureBox1属性的image属性导入的

点击复制按钮然后点击粘贴按钮,

时间: 2024-10-10 15:32:56

图像拷贝和粘贴-使用剪贴板的相关文章

vSphere Client中虚拟机与客户机中的剪切板不能够拷贝、粘贴

现象 vSphere Client中的虚拟机不能够与本地电脑之间进行文字的复制.粘贴 原因 vSphere 4.1开始,处于安全考虑拷贝.粘贴选项是被禁用的 解决 保证客户机安装了VMware Tools 通过vSphere Clinet 登录vCenter Server系统并关闭虚拟机电源. 选中虚拟机点击 摘要(Summary) 点击编辑设置 (Edit Settings) 浏览导航条到 选项 > 高级 > 常规 (Options > Advanced > General )

【vim小小记】vim的复制粘贴(包括系统剪贴板)

1.vim常用复制粘贴命令 Vim的复制粘贴命令无疑是y (yank),p(paster),加上yy,P PS: vim有个很有意思的约定(我觉得是一种约定),就是某个命令的大小写都是实现某种功能,只是方向不同,比如: w 跳转到下个word,W:跳转到上个word f 某行正向查找并跳转 F: 反向.... 然后部分双写的字母有行操作: yy 复制一行 dd 删除一行 所以, p就是在当前光标后粘贴,P就是在当前光标前粘贴 另外,说完p,其实还有几个命令有时也是很有用的 gp,和p的功能基本一

对文本框进行限制,拷贝,粘贴,剪切

某一时候我们想对文本框进行限制:不能对其时粘贴,如密码不粘贴.不能对其拷贝,剪切,显示在文本框中的内容不能拷贝,剪切等. 参考下面的语法: oncopy="return false" onpaste="return false" oncut="return false" 可以选择性写法: 如果想改为js code:

【Linux基础】VI命令模式下删除拷贝与粘贴

在VI命令模式下:y 表示拷贝, d 表示删除,p标识粘贴 1.删除 dw 表示删除从当前光标到光标所在单词结尾的内容. d0 表示删除从当前光标到光标所在行首的内容. d$ 表示删除从当前光标到光标所在行尾的内容. dd 表示删除光标所在行.6dd 表示删除6行 D 表示删除从当前光标到光标所在行尾的内容. :6,10  delete 表示删除第6行至第10行的数据,其中"delete"可以简写为"d"或"del"等等.---删除大量行时使用

C#_GDI+编程教程

第7章  C#图形图像编程基础 本章主要介绍使用C#进行图形图像编程基础,其中包括GDI+绘图基础.C#图像处理基础以及简单的图像处理技术. 7.1  GDI+绘图基础 编写图形程序时需要使用GDI(Graphics Device Interface,图形设备接口),从程序设计的角度看,GDI包括两部分:一部分是GDI对象,另一部分是GDI函数.GDI对象定义了GDI函数使用的工具和环境变量,而GDI函数使用GDI对象绘制各种图形,在C#中,进行图形程序编写时用到的是GDI+(Graphice

iOS 拷贝、剪切和粘贴理论基础(转)

简介 在iPhone OS 3.0之后,用户可以在一个应用程序上拷贝文本.图像.或其它数据,然后粘贴到当前或其它应用程序的不同位置上.比如,您可以从某个电子邮件中拷贝一个地址,然后粘贴到Contacts程序的地址域中.目前,UIKit框架在UITextView.UITextField.和UIWebView类中实现了拷贝-剪切-粘贴支持.如果您希望在自己的应用程序中得到这个行为,可以使用这些类的对象,或者自行实现. 但在iOS7.0后,UIPasteboard由共享变为沙盒化了,UIPastebo

Android 复制 粘贴 剪贴板的使用 ClipboardManager

Copy and Paste 版本:Android 4.0 r1 快速查看 用于复制粘贴数据的基于剪贴板的框架. 同时支持简单和复杂的数据,包括文本串.复杂的数据结构.文本和二进制流数据.程序 asset. 直接从剪贴板复制粘贴简单文本. 用content provider复制粘贴复杂数据. 需要API 11版本. 在本文中 剪贴板框架 剪贴板类 ClipboardManager ClipData.ClipDescription和ClipData.Item ClipData常用方法 将剪贴板中数

禁用 WebView 放大镜及拷贝粘贴弹出框

文/KyXu(简书作者)原文链接:http://www.jianshu.com/p/40048d9c979a著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 背景:当你的App中有 WebView 或者有 Text 文本的时候,毫无疑问,系统默认地会在你进行长按的时候,弹出一个框,来让你拷贝.粘贴.剪切文本等,亦或是弹出一个放大镜.而当你进行开发的时候,往往很明确的知道自己的 WebView 希望展示的是什么东西,这个时候,你可能会希望自定义长按手势(LongPressGestur

10 款最佳剪贴板管理器

导读 许多时候,你将内容拷贝到剪贴板后,最终因某人或某物导致的分心而清空剪贴板,而找不回来.如果出现这种情况,确实很烦人.那么,你如何杜绝这种令人沮丧的局面?这正是我们在本文中所要解答的问题. 这里不妨看一下可以帮助你管理并跟踪剪贴板内容的几款剪贴板管理器. 什么是剪贴板管理器? 剪贴板管理器是一种实用程序或工具,它在你Linux系统的后台运行,为你保存到系统剪贴板的所有内容保存一份历史记录. 为什么需要剪贴板管理器? 剪贴板管理器的一个重要用途就是,你没必要为清空或覆盖剪贴板内容而操心,如果你