delphi 访问word的问题(300分)

K

karxios

Unregistered / Unconfirmed
GUEST, unregistred user!
怎样才能通过delphi 访问word中 web工具箱的 htmlselect  也就是那个复选框 比如
word文件中有一个htmlselect 要求能通过WORD对它赋值,读取
 
关注,收藏
 
李维的书上有进怎么用ado调用word
 
主要是

htmlselect
 
是WebTools 裡面的 CheckBox嗎?
我怎麼不見有HTMLSelect?
 
有的 在word里 web工具箱
 
我還是沒有找到這個HTMLSelect, 下面用這個辦法可以調用, 但怎麼赋值還要試驗,
主要在WebTools裏沒有找到那個東西.

var
wClassType: OleVariant;
begin
wClassType := 'Forms.ComboBox.1';
WordDoc.ToggleFormsDesign;
WordDoc.Range.InlineShapes.AddOLEObject(wClassType,EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
 
是通过翻译vb宏得到的上面的代码吗

可是 我在word立放好了 一个combobox 怎么通过 delphi来读取它的选中得值呢
 
我可以添加这个对象
以下是我在word中编写的vba代码,用delphi实现方法相同
Sub add()
Dim myShape As InlineShape
Dim chk As CheckBox
Documents.Add DocumentType:=wdNewBlankDocument
CommandBars("Web Tools").Visible = True
Set myShape = Selection.InlineShapes.AddOLEControl(ClassType:="Forms.Checkbox.1")
'(将ClassType:="Forms.Checkbox.1"换做“Forms.HTML:Checkbox.1"就是web风格了)
Set chk = myShape .OLEFormat.Object
'?
chk.Value = True
' 主要问题是“Forms.HTML:Checkbox.1"这个classname在vba中找不到,所以返回类型有问题
'但肯定是这个类型了(“Forms.Checkbox.1"可不是html的checkbox)
End Sub
 
是WORD里WEB工具箱的下拉框,它的名字是htmlselect
 
不是说怎么创建一个combobox1 是说 怎样把已有的word文件里的 combobox里的内容通过delphi
读取 (当然 word 里其他任何控件的读取都可以)
 
通过 word 的对象模型进行处理。
 
多人接受答案了。
 
顶部