我正在尝试在VB脚本中创建一个下拉/组合框。根据我的理解,我们需要为Internet Explorer创建一个实例并创建一个下拉/组合框,如下所示:
set oIE = createObject("InternetExplorer.Application")
with oIE
.Navigate "about:blank"
Do until .ReadyState = 4 : WScript.Sleep 100 : Loop
set oDoc = .document
.Visible = true
end with
with oDoc
.open
.writeln "<html><head><title>ComboBox Example</title></head>"
.writeln "<body scroll=no><object "
.writeln "classid=clsid:8BD21D30-EC42-11CE-9E0D-00AA006002F3"
.writeln "id=ComboBox1 width=400></object><p>"
.writeln "</body></html>"
.close
Do until .ReadyState = "complete" : WScript.Sleep 100 : Loop
set oComboBox1 = .all.ComboBox1
end with
with oComboBox1
.List = Array("One", "Two", "Three", "Four")
.AutoWordSelect = true
.focus
end with
oDoc.parentWindow.opener = "Me"
bClosing = false
on error resume next
do until bclosing: wsh.sleep 100 : loop
oIE.quit
sub Closing : bClosing = True : end sub
是否可以在不使用IE的情况下创建dorp-down / combo框,类似于Message Box或Input Box?
答案 0 :(得分:5)
我很确定这里的很多用户都很乐意回答这个问题,他们的回复可能会有不同的细节,但肯定答案是一样的 - 不。至少不是纯粹的{{1}并且无需编写自己的VBScript
组件,然后在ActiveX
脚本中使用CreateObject
进行即时创建。
但如果您正在寻找替代方案,那么可以将HTA视为您自己的自定义GUI的选项。