Com接口入门细详(一)

2016-02-19 14:17 2 1 收藏

下面图老师小编跟大家分享Com接口入门细详(一),一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

【 tulaoshi.com - 编程语言 】

Com接口入门细详(一)

  

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  接口的出现更递了c++的多重的继承,在应用中相当重要一部分,然而接口中最主要的一块又是com接口(微软提供的接口标准),接口只是服务声明,而在一定形式并没有实现类方法。
  下面是一段简单的代码让我们来看一下。
  unit Unit1;

  interface

  uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, StdCtrls;

  type
    TForm1 = class(TForm)
      Button1: TButton;
      Button2: TButton;
      Edit1: TEdit;
      Edit2: TEdit;
      procedure FormCreate(Sender: TObject);
      procedure Button1Click(Sender: TObject);
      procedure Button2Click(Sender: TObject);
    private
      { Private declarations }
    public
      { Public declarations }
    end;
    // 定义接口ISampleInterface
    ISampleInterface= Interface(IUnknown)//所有接口都由IUnknown继承,com接口也不例外
  ['{48616967-425B-4E90-AA8B-F88FFC26D1D7}']//GUID,唯一的值,可以通过ctrl+shift+g来产生
      function GetName:string;
      procedure SetName(s:string);//方法定义
    end;
    // 实现接口ISampleInterface
    TSampleImpl=class(TInterfacedObject,ISampleInterface)//接口继承
    public
    __Name: string;
    function GetName:string;
    procedure SetName(s:string);
    end;
  var
    Form1: TForm1;
    MyInterface:ISampleInterface;

  implementation

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  {$R *.dfm}
  function TSampleImpl.GetName:string;//方法实现
  begin
    GetName:=__Name;
  end;
  procedure TSampleImpl.SetName(s:string);
  begin
    __Name:= s;
  end;

  
  procedure TForm1.FormCreate(Sender: TObject);
  begin
    MyInterface:= TSampleImpl.Create;//建立对象
  end;

  procedure TForm1.Button1Click(Sender: TObject);
  begin
    MyInterface.SetName(Edit1.Text);
  end;

  procedure TForm1.Button2Click(Sender: TObject);
  begin
    Edit2.Text:=MyInterface.GetName;
  end;
  

来源:https://www.tulaoshi.com/n/20160219/1606624.html

延伸阅读
标签: 软件教程 excel
下面的内容介绍了Excel2007中COM加载项的一些改变。介绍Excel很好地做了一些涉及到向后兼容的工作。在Excel 2000、Excel XP(2002)或Excel 2003中创建的COM加载项(CAI)不需要修改就应该能在Excel 2007中正常运行。然而,在开发应用于不同的Excel版本中的CAIs时,应该记住一些事项。菜单和命令栏Excel 2007修改了传统的界面,使用功能区(Ribbo...
标签: Java JAVA基础
  你需要做的第一事情是你要正确的安装。这包含下列几个步骤: 在你的计算机上安装 Java 和 JDBC Java 数据库连接 (JDBC) 是一个标准 SQL(Structured Query Language,结构化查询语言)数据库访问接口, 可以为多种关系数据库提供统一访问。JDBC(Java DataBase Connection,Java 数据库连接) 也提供一种基准,据此可以构建更高级...
SQL Server 2005发布后,可以编写出能够在SQL Server中运行的.net代码了。同IIS一样,SQL Server 2005也是.net程序的宿主。 首先安装sqlserver2005和visual studio 2005。启用sqlserver2005的clr ,应先在sqlsever的查询分析器按实际情况执行下边的语句 exec sp_configure 'clr enabled'--查看状态 exec sp_configure 'c...
  因为要做一个ActiveX的东东,想想最后一次做ActiveX的东东都是两年前的事,下午把《Delphi5开发人员指南》又翻出来看一下COM/Ativex章节,记录了前面一部分的,后面以实例为主,就不记了。继续看DotNet老 。 COM、OLE、ActiveX到底有什么区别? COM是一组API和二进制标准,是其它相关技术的基石。 OLE仅仅是指与...
⊙ 第一章 概述 =================================================== COM 是什么 --------------------------------------------------- COM 是由 Microsoft 提出的组件标准,它不仅定义了组件程序之间进行交互的标准,并且也提供了组件程序运行所需的环境。在 COM 标准中,一个组件程序也被称为一个模块,它可以是...

经验教程

319

收藏

90
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部