Board logo

标题: [问题求助] 用VBS怎样写复选框? [打印本页]

作者: wteagle    时间: 2011-12-8 16:45     标题: 用VBS怎样写复选框?

请教一个问题。我在编写DIADem的VBS Script。现在我想实现一个功能,就是弹出一个对话框,上面可以多重选择,然后返回选择了哪些内容。
比如,我有参数a,b,c,d,e,我希望弹出一个对话框,上面列出a、b、c、d、e,然后在其下面(或者竖着列,在其右边)有对应的五个小选择方框,电脑上常见的那种复选框,点一下就会有有一个x,再点x消失。比如我点了a、c、d的复选框,然后点确定,对话框消失,并以某种方式反馈给程序我选了哪些参数,用于后面的计算。比如把选了的acd名字赋给三个变量,如果选了四个就赋给四个变量等等。
这个功能该如何实现呢?不胜感激!

此外,在调用标准数据加载对话框时,能否加入其他信息,比如加入一个或若干个选择框,不仅加载数据,同时也返回对选择框做出了怎样的选择?
作者: broly    时间: 2011-12-9 21:46

VBScript没有这个功能,VB就可以
作者: s700800900    时间: 2011-12-23 16:25

如果你愿意的话, 可以试试微软的hta, 框体由网页支持, 代码由js或vbs支持.
作者: s700800900    时间: 2011-12-23 16:26

如果你愿意的话, 可以试试微软的hta, 框体由网页支持, 代码由js或vbs支持.
作者: pcl_test    时间: 2017-4-13 00:27

本帖最后由 pcl_test 于 2017-4-13 12:15 编辑
  1. Set ws = CreateObject("WScript.Shell")
  2. list=split("项目一|项目二|项目三|项目四|项目五","|")
  3. For i=0 To UBound(list)
  4.     info=info&"<input type='checkbox' name='check' value='"& i+1 &"'> "& list(i) &"<br>"
  5. Next
  6. msgbox CheckBox(info)
  7. Function CheckBox(info)
  8.     CheckBox = ws.Exec("mshta.exe ""about:<HTA:APPLICATION ShowInTaskbar='no' Scroll='no' MaximizeButton='no' MinimizeButton='no' />" &_
  9.         "<title>请选择</title><script>window.resizeTo(180, 220);" & _
  10.         "function choise(){var result='', list=document.getElementsByName('check');" & _
  11.         "for(var i=0;i<list.length;i++){if(list[i].checked==true)result+=list[i].value+'|';}" & _
  12.         "(new ActiveXObject('Scripting.FileSystemObject')).GetStandardStream(1).write(result.replace(/\|$/, ''));close();}</script>" & _
  13.         "<body style='text-align:center'><div><font style='color:#008200;'>"& info &"</font></div><br>" & _
  14.         "<input type='button' value='确定' onclick='choise()'></body>""").StdOut.ReadAll
  15. End Function
复制代码

作者: jiang_best    时间: 2022-1-12 11:47

回复 5# pcl_test
版主,怎么让您写的这个复选框窗口居中显示呢?如果能有个全选和反选的判断按钮就更好了,能帮修改一下吗?谢谢




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2