Com接口入门细详(一)

happy孟咔咔

happy孟咔咔

2016-02-19 14:17

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

  

  

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

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

  interface

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

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

  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;
  

展开更多 50%)
分享

猜你喜欢

Com接口入门细详(一)

编程语言 网络编程
Com接口入门细详(一)

Com接口入门细详(二)

编程语言 网络编程
Com接口入门细详(二)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Microsoft Agent的COM接口编程

编程语言 网络编程
Microsoft Agent的COM接口编程

非COM环境下的接口编程--问题技巧应用(一)

编程语言 网络编程
非COM环境下的接口编程--问题技巧应用(一)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

如何通过COM接口得到实现该接口的对象实例

编程语言 网络编程
如何通过COM接口得到实现该接口的对象实例

自动化基础概念之“COM组件与接口”

编程语言 网络编程
自动化基础概念之“COM组件与接口”

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

javamail 处理html信件的方法,包括发送html和接受html邮件

javamail 处理html信件的方法,包括发送html和接受html邮件

CSS基础教程:盒模型(BOX Model)

CSS基础教程:盒模型(BOX Model)
下拉加载更多内容 ↓