如何创建一个带有多个按钮的窗口,这些按钮在点击后不会消失。我试图制作一个简单的窗口框,其中包含可以打开程序的按钮。我一直在使用WBox.exe来制作我的GUI,但是当您按下任何按钮时,它会在启动程序之前关闭窗口。
HTML也出现在我的脑海中,但我不知道如何制作按钮,甚至不知道它是否可以在单击时启动程序。
如何创建一个带有多个按钮的窗口,这些按钮在点击后不会消失。我试图制作一个简单的窗口框,其中包含可以打开程序的按钮。我一直在使用WBox.exe来制作我的GUI,但是当您按下任何按钮时,它会在启动程序之前关闭窗口。
HTML也出现在我的脑海中,但我不知道如何制作按钮,甚至不知道它是否可以在单击时启动程序。
<!-- :: Batch section
@echo off
setlocal
echo Select an option:
for /F "delims=" %%a in ('mshta.exe "%~F0"') do set "HTAreply=%%a"
echo End of HTA window, reply: "%HTAreply%"
goto :EOF
-->
<HTML>
<HEAD>
<HTA:APPLICATION SCROLL="no" SYSMENU="no" >
<TITLE>HTA Buttons</TITLE>
<SCRIPT language="JavaScript">
window.resizeTo(374,100);
function closeHTA(reply){
var fso = new ActiveXObject("Scripting.FileSystemObject");
fso.GetStandardStream(1).WriteLine(reply);
window.close();
}
</SCRIPT>
</HEAD>
<BODY>
<button onclick="closeHTA(1);">First option</button>
<button onclick="closeHTA(2);">Second option</button>
<button onclick="closeHTA(3);">Third option</button>
</BODY>
</HTML>
将此代码保存在具有 .BAT 扩展名的文件中。也许您需要调整 window.resizeTo(374,100);
行中的值以匹配您屏幕的分辨率。即使您对 .HTA 文件一无所知,这个示例也足够简单,您也可以理解它。有关此问题的更多详细信息和链接,请参见此帖子。
setlocal
下面插入以下代码:if not defined flag set "flag=1" & start "HTA" /MIN "%~F0" & goto :EOF
,并将原来的goto :EOF
改为exit
。 - Aacini@echo off
::call radioButtons.bat "one" "two" "three"
for /f "tokens=* delims=" %%# in ('
radioButtons.bat "one" "two" "three"
') do (
set "selected=%%#"
)
echo selected button number: %selected%