问题
I'm trying to create a drop-down/combo box in VB Script. As per my understanding we need to create an instance for Internet Explorer and create a drop-down/combo box, something like this:
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
Is it possible to create an dorp-down/combo box without using IE, similar to Message Box or Input Box?
回答1:
I'm quite sure many users here will glad to answer on this question, and their reply may hold varied details, but for sure the answer w'd been the same - No. At least not with pure VBScript
and without programming your own ActiveX
component, which then to instantinate with CreateObject
inside your .vbs
script.
But if you looking for alternative then may consider HTA as an option for your own custom GUI.
来源:https://stackoverflow.com/questions/15516311/display-a-drop-down-combo-box-in-vb-script