用OleContainer加载了WORD以后,如何进行"全选"并复制WORD内容?
用OleContainer加载了WORD以后,如何进行复制WORD内容?
谢谢
[解决办法]
利用c++builder 中ole自动化功能实现调用word进行报表制作
一、概述
在我们利用c++builder进行报表设计和打印处理时,我们往往是用c++builder自己所提供的qreport组件页中的组件进行报表的设计和输出。但这样输出的表格都是事先设计好,并且不容易修改的表格,在系统移植
后和需要对表格进行修改时就显得非常麻烦。那么,有什么好的解决方法来实现既可以自动生成报表,同时有能够对生成的报表进行灵活地修改呢?
几乎每一个用过miscrosoft office 2000 中word字处理软件的人都知道:word是一个强大的文字、表格、排版处理软件。在word中可以设置不同的字体、字号,绘制各种不同形状的表格……。word强大的功能给
我们在使用它的过程中留下了深刻的印象。
如果我们能将c++builder中处理好需要生成为报表的数据导入到word中;在word中对生成的报表还可以修改、排版那该多好啊!答案是肯定的,我们能够在c++builder中调用word ,生成各种不同的报表。
二、实现
下面我们将用具体的实例来说明如何运用c++builder调用word进行报表的设计和制作。,我们在安装了c++builder和word后就可以进行应用程序的设计了,在安装c++builder的过程中将选择当前您所使用的系统中
office的版本,c++builder可以选择两种版本:office2000版和office97版。在我们所举的实例中都是在office2000版下进行的。
(实例1)
以下的一个例子将详细地说明在c++builder中如何调用word并打印出一个字符串来。
步骤1 打开c++builder开发平台,创建一个新的项目
步骤2 在c++builder的组件面板中找到office2k组件页,在这个组件页上我们可以看到如下组件:
在这里我们对这些组件中调用word部分进行概括的说明:
wordglobal 组件:对word的最高级属性和方法进行调用。
wordapplication组件:word应用程序组件,完成对word应用程序的调用。是实现word调用的核心组件。
worddocument组件:word文档处理组件,用于处理文档的具体内容。
wordfont组件:用于设置word中的字体、字号等文字设置信息。
wordparagraphformat组件:用于对word中的段落格式进行处理。
wordlettercontent组件:对由信函向导创建的信函的元素进行调用的组件。
步骤3 在新项目的form表单中添加一个wordapplication组件,将name属性改为: wordapp1。
步骤4 添加一个按钮组件到form表单上将按钮的caption属性设置为:“word调用”
步骤5 双击按钮组件切换到代码编辑窗口,添加如下代码:
--------------------------------------------try{ wordapp->connect(); //与word进行连接 wordapp->documents->add(); //建立一个新文档 wordapp->documents->item(variant(1))->range()->text= widestring("这是第一个word调用程序"); //在文档中添加一段新文本 wordapp->visible=true; //显示word}catch(...){ showmessage("您可能没有安装word!"); wordapp->disconnect();} --------------------------------------------