Delphi与Word之间的融合技术 (0分)

  • 主题发起人 主题发起人 yzhshi
  • 开始时间 开始时间
老兄,不要夸了,好不?我已经被你吹的找不到北了。[:D][:D][:D]
 
最近在用,所以说说。控制OLEContrainter主要是通过OleContainer.OleObject来进行,可以
直接用Ole的方式控制,例如:var WordDocvar:olevariant;worddoc:=OleContainer.OleObject;
如果想取得Word.Application,就必须先Olecontainer.doverb(-1)来产生Word.Application。
然后WordAppvar:=WordDoc.Application。如果想用Servers上的控件,可以加一句:
WordDoc:=IUnknown(WordDocVar) as TWordDocument;
不过我的经验是最好直接用接口,不要用TWordDocument,问题多多,而且最好将OleContainer
单独放在一个Form里,Form里最好不要有TEdit、TComboBox这样的具有输入焦点的控件,这样
界面很直观,而且少了很多问题。
一点经验,欢迎指正。
 
不错,这样Word和自己的程序就更加融合了。欢迎继续探讨!
 
大开眼界,发现自己虽也算是搞软件的却什么都不懂,真是惭愧。
真希望能有一位这样的良师益友,可惜....
还有大富翁论坛,真是不错
 
能否说一些控制word中菜单项的方法;如下的vba代码执行后为何菜单项依然存在
Sub Lock_SavetySet()
Dim Bar As CommandBar
Dim DisabelControl As CommandBarControl
Dim i As Integer
Application.DisplayExcel4Menus = False
For Each Bar In Application.CommandBars
If Bar.NameLocal = "Visual Basic" Then
For i = 1 To Bar.Controls.Count
If Bar.Controls.Item(i).Caption = "安全..." Then
Bar.Controls.Item(i).visible = false
Exit Sub
End If
Next
End If
Next
End Sub
 
1、可以使用VBA屏蔽掉相应功能的Office事件,如下,屏蔽了FileSave(保存)选项
Sub FileSave()
'里面什么都不需要加,如果你需要他执行保存的时候还执行别的,那么添加,同时加上下面这句话
' Word.ActiveDocument.Save
End Sub

2、使用Delete方法,可以删除此属性,Visible还可以再次显示,而Delete就……

3、对于实现特定功能,没有必要这么做,你可以将所有VBA代码生成一个dot模板,其他文档
建立/打开的时候以他为基本模板就可以了。
 
各位大虾,能否教小弟如何实现在EXCEL中导入DELHI中TCHART的图象,(要能分组)
万分感谢!!!
 
我用olecontainer 并WordDoc:=IUnknown(WordDocVar) as TWordDocument;
但不能预览,不能设置页面,可以打印,请问如何操作
wordapplication.printpreview或worddocument.printpreview不能预览
用server能控制不要它自己关闭,新建,存储吗?
 
这个我没有做过,估计还需要SeaHawk帮忙说一下。
同时,控制他不让他关闭、新建、存储,可以使用函数将那些按钮Disable,然后删除。
但是应付快捷键还需要使用VBA,具体的VBA代码如上。
同时,对于OlE技术,微软本身的说法是仅仅推荐使用浏览,而不推荐修改、保存、打印等。
所以可能实现打印还有一定难度。但是只要努力尝试,应该没问题的。
比如,可以充分利用VBA代码。
 
我用olecontainer ,可以打印,加如字符图形等操作,这是比server的优点,对不对
有时我却时觉得ole会比server功能强大,但不方便
不知如何预览,与页面设置??? 请教高手!!!! 谢谢
用server能控制不要它自己关闭,新建,存储吗?

 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=874308
这个问题谁能解决。
 
重装了系统,居然收不到大富翁邮件,只好重新激活一次:(
先更正一下,WordDoc:=IUnknown(WordDocVar) as _Document才对。
在Olecontainer确实无法预览和调节打印设置,直接用操作Word对象也不可以保存文件,
但是你可以用Olecontainer自己的SaveToDocument保存文件。
 
在Olecontainer中能不能实现滚动?请指教。
 
大家都这么涌跃,我也说两句吧,我是搞OLE自动化的,用过IDISPATCH接口,在DELPHI下
面其用来封装IDispach.Invoke的函数DispachInvoke有BUG,或者可以说这是由于缺少此函
数的帮助所致,所以只能绕过个函数,自己接触IDispach.Invoke,还有,如果是参数是
BSTR的话,对于OFFICE软件是可以通得过的,但是对于ADO却要将参数类型设为
Var_BSTR or Var_ByRef = 8 + 16384 = 16392,这是我三个月的经验总结。。。
 
搞了我两天,终于摸索出怎样在Word里头添加按钮和相应的处理事件(不是用宏)。
不知道能骗多少分呢?:)
 
>来自:SeaHawk, 时间:2002-1-27 17:22:00, ID:888393
>搞了我两天,终于摸索出怎样在Word里头添加按钮和相应的处理事件(不是用宏)。
>不知道能骗多少分呢?:)
不是OLE 怎么加按钮和菜单?怎么预览与页面设置?
我送分200,
另,ole或sever怎么加宏,怎么调用,

 
后退
顶部