起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 306|回复: 6

【结贴】再问关于word的控制问题

[复制链接]
发表于 2010-6-7 15:54:03 | 显示全部楼层 |阅读模式
通过前帖学习了在X3平台中将word文档中某字符替换成当前数据的方法,如果在word文档中插入复选框怎么控制呀?
回复

使用道具 举报

发表于 2010-6-7 15:58:14 | 显示全部楼层
自己录制一个插入控件复选框的宏看看吧。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-6-7 16:07:22 | 显示全部楼层
有没有例子呀,自己实在弄不明白
回复 支持 反对

使用道具 举报

发表于 2010-6-7 16:33:11 | 显示全部楼层
没有插入复选框的例子
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-6-11 09:21:37 | 显示全部楼层
插入了一个复选框的宏,如下:
  ActiveDocument.FormFields("check1").CheckBox.Value = True
我的X3代码如下:
var
  StrFile : string ;

  FWord bject;
  FApp,FDocs :system.DispatchHelper ;
  lFormFields : system.DispatchHelper;  
begin
StrFile := 'c:\test.doc'
FWord := ComObj.CreateOleObject('Word.Application');
  FApp := system.DispatchHelper.Create(FWord);
  FApp.PropertyPut('Visible', [True]);

  FDocs := system.DispatchHelper.Create(FApp.PropertyGet('Documents',  []));
  FDocs.InvokeMethod('Open', [StrFile]);

  lFormFields := system.DispatchHelper.Create(FApp.PropertyGet('FormFields', []));
...........
end;
运行时lFormFields := system.DispatchHelper.Create(FApp.PropertyGet('FormFields', []));
总是报错,版主给看看什么原因?
回复 支持 反对

使用道具 举报

发表于 2010-6-11 09:42:02 | 显示全部楼层
请贴全完整代码和错误内容。
还有:
  FDocs := system.DispatchHelper.Create(FApp.PropertyGet('Documents',  []));
不要使用这样的用法,
要把FApp.PropertyGet('Documents',  [])单独赋给一个Object变量,最后释放,否则word进程释放不掉。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-6-11 15:13:12 | 显示全部楼层
搞定了,结吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-8 19:35 , Processed in 0.045405 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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