网站大量收购独家精品文档,联系QQ:2885784924

讲稿文字规范-上海交通大学网络教育课程-上海交通大学继续.PPT

讲稿文字规范-上海交通大学网络教育课程-上海交通大学继续.PPT

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
讲稿文字规范-上海交通大学网络教育课程-上海交通大学继续

应用软件开发(C#) 第8章 Active控件和自定义组建开发 第8章 ActiveX控件和自定义组件开发 王德俊 上海交通大学继续教育学院 第8章 ActiveX控件和自定义组件开发 8.1 ActiveX控件 8.2 自定义组件 ActiveX控件概念 什么是ActiveX控件 ActiveX是Microsoft对一系列策略性面向对象程序技术和工具的称呼,是“成品”的软件模块,可以简单理解为能够实现特定功能的“成品”控件。 ActiveX控件是在OLE控件“对象链接与嵌入控件”和OCX控件的基础发展起来的,其重要作用是可以插入到网页或应用程序中使用。 自定义组件概念 什么是自定义组件 严格来说,ActiveX控件指的是提供用户界面接口(UI)功能的组件,而一般所说的组件是无用户界面组件,此类组件定义时只需定义为宿主程序所调用的属性和方法,无需考虑如何显示界面。 ActiveX控件通常以dll或ocx文件的形式存在,自定义无界面组件通常以dll的形式存在,它们不能独立运行,相应的依赖程序称为宿主程序。 宿主程序在使用控件和组件时,不需要编译,只需要按照既定的格式说明进行调用即可。 开发语言: ActiveX控件可以用各种编程语言来开发,如C、C++,也包括.NET中的C#、VB.NET等。 开发和使用 自定义组件的创建步骤 (1) 选择“文件”|“新建”|“项目”命令,在打开的“新建项目”对话框的模板框中选择“类库”模版, 并设置组件名称,【确定】 (2) 在对应的类文件中,添加具有一定功能的public方法作为组件访问接口 (3) 选择“生成”|“生成组件名称”菜单命令,即可在程序根目录的“组件名称\bin\Release”或“组件名称\bin\Debug”子目录下生成以文件“组件名称.dll”存在的组件。 自定义组件的使用 (1)创建应用程序,如:窗体应用程序 (2)选择菜单“项目”|“添加引用”命令,在打开的“添加引用”对话框中打开“浏览”选项卡,定位到“组件名称.dll”文件所在的目录,选择该文件,【确定】,引入已创建的组件 (3)在应用程序中创建组件类的对象调用其接口方法。 【例8.1】 开发具有对英文文本进行加密和解密功能的组件。 设计思想:这里假设英文文本是由大小写字母、逗号、点号和空格组成。加密的原理是,先将这些字符随机地排成一圈,为叙述方便,不妨假设排成如下的圈(□表示空格): 令key表示密钥(这里为整数),对于英文文本(明文)中的每个字符,用其在圈中所在位置后面的第key个字符表示。 例如,如果key为4,则文本“I am a boy. ”加密后就变成密文“MdeqdedfsCc”。 解密方法:只需将密文中的字符用其在圈中所在位置前面的第key字符来表示即可。 解密用户必须知道密钥key。 【例8.1】(续) 【例8.1】(续) 步骤如下: (1) “新建项目” , 选择“类库”,然后将项目名设置为EnDecrypting,单击【确定】按钮。 (2)命名空间采用默认设置EnDecrypting,而将类名改为EnDecryptingClass;然后在该类中添加一个私有成员: private string matrix = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ,. ; 【例8.1】(续) (3)接着在EnDecryptingClass类中添加两个方法,分别用于实现加密和解密: public string Encrypting(string plaintext, int keycode) //加密 public string Decrypting(string ciphertext, int keycode) //解密 【例8.1】(续) public string Encrypting(string plaintext, int keycode) //加密方法 { char[] chars = matrix.ToCharArray(); char[] ciphertext_arr = plaintext.ToCharArray(); //将明文散列到字符数组中 int i = 0, j = 0; for (i = 0; i ciphertext_arr.Length; i++) { for (j = 0; j chars.Length; j+

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档