科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件Visual C#的剪切板编程

Visual C#的剪切板编程

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文将结合二个具体的程序例子来介绍Visual C#剪切板编程的二个重要方面:判定剪切板中的数据类型、保存剪切板中的数据

作者:阿虎 来源:Yesky 2007年11月14日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
五. Visual C#保存剪切板数据的解决思路以及重要步骤的解决办法:

  用Visual C#保存剪切板中的数据要使用的类和接口和判定剪切板中的数据类型基本一样。但由于要读取剪切板数据,就需要用到了IdataObject接口的方法GetData ( ),这个方法的作用就是获得指定类型的数据内容。他的语法为:

object GetData ( Type ) ;

  我们注意到这个方法返回的类型是一个Object类型,这是一个参考类型,他的变量就是一个参考类型变量,而我们读取的内容应该是一个实值类型变量,这就又涉及到装箱和出箱的问题了。由于在前面的文章中已经比较详细的说明了这二者的关系(见《用Visual C#动态生成组件》),所以在本文就不介绍了。在本文的程序中是通过下列二行语句来实现这种由参考类型变量转换成实值类型变量的过程:

Bitmap b = ( Bitmap ) d.GetData ( DataFormats.Bitmap ) ;//位图
String c = ( String ) d.GetData ( DataFormats.Text ) ;//文本

  实现保存剪切板中数据的程序的设计思路是,首先判定当前剪切板中的数据类型,如果数据类型为位图,则保存到C盘的"my.bmp"文件中,如果数据类型是文本,则用一个RichText组件显示出来。否则则提示是其他类型数据。下图就是程序实现上述功能的截图:


  图01:数据类型为位图的时候,程序运行界面



    图02:数据类型为文本时程序运行界面

  如何判定剪切板数据类型在上面已经介绍过了,程序的另外一个难点就是,假定已经判定剪切板中的数据类型为位图,如何保存数据。在程序中是通过名称空间System.Windows.Forms中的Bitmap类的Save ( )方法来实现的。下列语句就是具体的实现方法。

Bitmap b = ( Bitmap ) d.GetData ( DataFormats.Bitmap ) ;
b.Save ( @"c:\my.bmp" ) ;
MessageBox.Show ( "当前剪切板内容是位图,已经保存到"MY.BMP"文件中!" ) ;
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章