易语言吧

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2259|回复: 1

[技术文章] Com对象在易语言中的使用

[复制链接]

522

主题

830

帖子

4万

积分

易语言吧管理员

Rank: 9Rank: 9Rank: 9

积分
40927

幽默大师终生成就

威望
0
易币
39702
贡献
0
积分
40927
UID
1
在线时间
1476 小时
注册时间
2019-7-19
发表于 2019-12-8 15:50:24 | 显示全部楼层 |阅读模式


在说明com对象在易语言中的使用之前,让我们先来了解一下几个问题

       什么是com

com全称是组件对象模型(compoment object model),他是一组规范,是MicroSoft创建的一组二进制和网络标准,用于解决两个组件之间的通信。

       什么是com对象

      com是面向对象的软件模型,com对象的概念有点类似于C++中对象的概念。在com规范中,没有com对象的严格定义,com组件提供给客户的是以对象形式封装起来的实体,客户与组件交互的实体是com对象。

    com对象有自己的属性和方法,但这些都被com封装了起来,客户只有通过接口才能对com的方法进行调用,接口是com与外界通信,交互的唯一途径。

       什么是接口

       接口就是com 与外界通信的唯一途径。他的定义是com规范的核心。接口是一组逻辑上相关的函数的集合,他自己可以看作是指向改组函数集合的指针。

       下面我们来说说,在“易语言”中是如何调用com对象的呢?我们就以Word的com对象来举例说明。

       首先运行“易语言”,在变量中创建一个类型为“对象”的变量。

    然后再窗体上放入一个编辑框控件和按钮控件。

进入窗口程序集1,在启动窗口创建完毕事件中写入如下代码

这行代码的作用是把我们刚才创建的“word对象”这个变量和word的com对象连接上,“Word.Application”这段我们可以理解为word的com对象的总的一个接口,通过这个总的接口我们才可以调用它里面的功能,但是前提就是你的计算机中必须安装有office,否则你是无法连接上word的com对象的。安装完了office之后,在安装目录中,就有每个程序的com对象接口的详细文档,我们可以参考这些文档来完成我们需要的功能。

这时我们可能不知道连接上了之后,再怎么去使用它内部的接口呢。我们可以使用“易语言”的对象.查看命令,来查看你当前使用的对象中都包括哪些接口。

在运行之后,我们会看到一个查看对象中接口的一个表,这就是查看命令生成的表,察看命令在编译之后是不会运行的。

如果我们想操作这些接口,就必须创建这些接口的对象变量来连接他们。

这里我们需要调用“Documents”接口,我们就创建一个doc对象的变量,类型为“对象”

然后我们通过这个变量来连接我们刚才所提到的对象。至于怎么连接这个对象,我们上面的类型查看表已经写的很清楚了。

这样我们就和“Documents”这个对象连接上了,当然只使用这一个接口不能完成我们需要的事情,我们还得做其他连接,具体连接方式,还是要查看类型表,这里就不重复说明了,但是有一点需要注意,“易语言”所连接的对象必须是一步一步连接的,比如说:有一个对象“A”他下面有对象“B”对象“B”下面还有对象“C”,我们的连接方法是,首先出创建对象“A”的连接,即:A对象.连接(“A”)然后B对象=A对象.读对象属性(“B”)或者B对象=A对象.对象型方法来连接B,具体使用哪种方法,要看你连接的对象属于什么,具体可用查看命令查看,类型表中写的很清楚,连接C对象的方法和连接B对象是一样的,只不过变成了C对象=B对象. …了。

我们这里需要连接add对象,Range对象和Text对象 连接方法如下

写到这里,我们已经把我们需要的对象的连接全部做完了,下面就开始完成我们需要达到的效果。

首先我们操作word对象

这句代码的作用是让我们连接的word对象可视=真

然后我们来改变word对象的标题

我们把word对象的标题换成了“易语言操作word”

我们在把编辑框1的内容放入到word中去

现在运行程序吧,把你需要的内容填入到编辑框1中,然后按下按钮1,看看会发生什么?

我们这里只是说明了com对象的简单调用方法,com对象的使用非常广泛,只要我们能很好的掌握在“易语言”中调用com对象的方法,我们就能写出很强大的软件来。


下载:com对象.e

0

主题

2339

帖子

9564

积分

VIP超级贵宾

Rank: 8Rank: 8

积分
9564
威望
198
易币
6829
贡献
0
积分
9564
UID
11903
在线时间
36 小时
注册时间
2021-1-23
发表于 2021-5-28 20:32:29 | 显示全部楼层
楼主发贴辛苦了,谢谢楼主分享!我觉得易语言吧是注册对了!
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【选择右侧内容,快速回复】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

大漠插件注册码无须等1-3号

QQ|一:站内所有资源均来自互联网收集或用户上传分享,本站不拥有此类资源的版权。 作为网络服务提供者,对转载行为的发生不具备充分的监控能力。但是当版权拥有者提出侵权并出示充分的版权证明材料时,易语言吧负有移除转载作品以及停止继续传播的义务。在满足前款条件下采取移除等相应措施后不为此向原发布人承担违约责任,包括不承担因侵权不成立而给原发布人带来损害的赔偿责任。 用户免费分享产生,如果侵犯了你的权益,联系QQ:3066137757|Archiver|手机版|小黑屋|易语言吧

GMT+8, 2024-11-21 20:45 , Processed in 0.191838 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表