下面图老师小编跟大家分享Com接口入门细详(一),一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~
【 tulaoshi.com - 编程语言 】
Com接口入门细详(一)
  接口的出现更递了c++的多重的继承,在应用中相当重要一部分,然而接口中最主要的一块又是com接口(微软提供的接口标准),接口只是服务声明,而在一定形式并没有实现类方法。
  下面是一段简单的代码让我们来看一下。
  unit Unit1;
interface
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)  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
  {$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;
  
来源:http://www.tulaoshi.com/n/20160219/1606624.html
看过《Com接口入门细详(一)》的人还看了以下文章 更多>>