vbs+hta中實(shí)現(xiàn)在單個(gè) onClick 參數(shù)中包括多個(gè)子例程的代碼
更新時(shí)間:2007年04月01日 00:00:00 作者:
問:
您好,腳本專家! 在您的 HTA 示例中,您為我們展示了如何單擊一個(gè)按鈕使一個(gè)子例程得以運(yùn)行。 那么,如何向一個(gè)按鈕的 onClick 參數(shù)添加兩個(gè)或多個(gè)子例程呢?
-- FM
答:
您好,F(xiàn)M。您知道,在認(rèn)知心理學(xué)中有一個(gè)有趣的分支,稱為問題發(fā)現(xiàn);其理論是您回答問題的能力通常首先取決于您問到的問題。 例如,您 – 以及其他幾個(gè)人 – 想要知道如何在一個(gè)按鈕的 onClick 參數(shù)中指定多個(gè)子例程。 我們見過人們嘗試對代碼做出各種修改,以下就是一個(gè)例子:
<input type="button" value="Run Button" onClick="Script_1; Script_2; Script_3">
正如您所見,這不能解決問題。
那么讓我們將發(fā)現(xiàn)問題的技能應(yīng)用到測試中,看看是否能夠用其它方式來描述該問題。 (通常,腳本專家無需發(fā)現(xiàn)問題;問題會(huì)設(shè)法找到我們。) 下面是問題的關(guān)鍵所在: 我們是真的要向 onClick 參數(shù)添加多個(gè)子例程,還是僅想要在任何時(shí)候單擊按鈕時(shí)能夠運(yùn)行多個(gè)子例程?
如果是后者,我們有下面的答案:
<html>
<head>
<title>Multiple Subroutines</title>
<HTA:APPLICATION
ID="objHTAHelpomatic"
APPLICATIONNAME="MultipleSubroutines"
SCROLL="yes"
SINGLEINSTANCE="yes"
WINDOWSTATE="maximize"
>
</head>
<SCRIPT Language="VBScript">
Sub RunScripts
Script_1
Script_2
Script_3
End Sub
Sub Script_1
Msgbox "This is subroutine 1."
End Sub
Sub Script_2
Msgbox "This is subroutine 2."
End Sub
Sub Script_3
Msgbox "This is subroutine 3."
End Sub
</SCRIPT>
<body>
<input type="button" value="Run Button" onClick="RunScripts">
</body>
</html>
注意: 前面的代碼被設(shè)計(jì)為從一個(gè) HTA(HTML 應(yīng)用程序)運(yùn)行。 如果想要測試該代碼,只需復(fù)制該腳本,將其粘貼到記事本或者其它的文本編輯器,并且用 .HTA 文件擴(kuò)展名保存。
如果粗略地看一下該代碼,您可能會(huì)注意到按鈕的 HTML 標(biāo)記:
<input type="button" value="Run Button" onClick="RunScripts">
正如您所見到的那樣,我們僅在 onClick 參數(shù)中指定了一個(gè)單一子例程 (RunScripts)。 哦,但是看一下子例程 RunScripts 的代碼:
Sub RunScripts
Script_1
Script_2
Script_3
End Sub
答案就在這里。 在該子例程中我們所做的就是調(diào)用其它三個(gè)子例程: Script_1、Script_2 和 Script_3。這就是我們?nèi)绾螐囊粋€(gè)按鈕的單擊事件中運(yùn)行多個(gè)子例程的方法: 我們并不把所有那些子例程都放入 onClick 參數(shù)中,而是將其放入 onClick 所調(diào)用的單個(gè)子例程中。
您好,腳本專家! 在您的 HTA 示例中,您為我們展示了如何單擊一個(gè)按鈕使一個(gè)子例程得以運(yùn)行。 那么,如何向一個(gè)按鈕的 onClick 參數(shù)添加兩個(gè)或多個(gè)子例程呢?
-- FM
答:
您好,F(xiàn)M。您知道,在認(rèn)知心理學(xué)中有一個(gè)有趣的分支,稱為問題發(fā)現(xiàn);其理論是您回答問題的能力通常首先取決于您問到的問題。 例如,您 – 以及其他幾個(gè)人 – 想要知道如何在一個(gè)按鈕的 onClick 參數(shù)中指定多個(gè)子例程。 我們見過人們嘗試對代碼做出各種修改,以下就是一個(gè)例子:
<input type="button" value="Run Button" onClick="Script_1; Script_2; Script_3">
正如您所見,這不能解決問題。
那么讓我們將發(fā)現(xiàn)問題的技能應(yīng)用到測試中,看看是否能夠用其它方式來描述該問題。 (通常,腳本專家無需發(fā)現(xiàn)問題;問題會(huì)設(shè)法找到我們。) 下面是問題的關(guān)鍵所在: 我們是真的要向 onClick 參數(shù)添加多個(gè)子例程,還是僅想要在任何時(shí)候單擊按鈕時(shí)能夠運(yùn)行多個(gè)子例程?
如果是后者,我們有下面的答案:
復(fù)制代碼 代碼如下:
<html>
<head>
<title>Multiple Subroutines</title>
<HTA:APPLICATION
ID="objHTAHelpomatic"
APPLICATIONNAME="MultipleSubroutines"
SCROLL="yes"
SINGLEINSTANCE="yes"
WINDOWSTATE="maximize"
>
</head>
<SCRIPT Language="VBScript">
Sub RunScripts
Script_1
Script_2
Script_3
End Sub
Sub Script_1
Msgbox "This is subroutine 1."
End Sub
Sub Script_2
Msgbox "This is subroutine 2."
End Sub
Sub Script_3
Msgbox "This is subroutine 3."
End Sub
</SCRIPT>
<body>
<input type="button" value="Run Button" onClick="RunScripts">
</body>
</html>
如果粗略地看一下該代碼,您可能會(huì)注意到按鈕的 HTML 標(biāo)記:
<input type="button" value="Run Button" onClick="RunScripts">
正如您所見到的那樣,我們僅在 onClick 參數(shù)中指定了一個(gè)單一子例程 (RunScripts)。 哦,但是看一下子例程 RunScripts 的代碼:
Sub RunScripts
Script_1
Script_2
Script_3
End Sub
答案就在這里。 在該子例程中我們所做的就是調(diào)用其它三個(gè)子例程: Script_1、Script_2 和 Script_3。這就是我們?nèi)绾螐囊粋€(gè)按鈕的單擊事件中運(yùn)行多個(gè)子例程的方法: 我們并不把所有那些子例程都放入 onClick 參數(shù)中,而是將其放入 onClick 所調(diào)用的單個(gè)子例程中。
相關(guān)文章
可以得到當(dāng)前系統(tǒng)信息的腳本sysinfo.vbs
可以得到當(dāng)前系統(tǒng)信息的腳本sysinfo.vbs...2007-02-02用vbs將輸出內(nèi)容寫到屏幕以覆蓋當(dāng)前屏幕上的內(nèi)容的方法
用vbs將輸出內(nèi)容寫到屏幕以覆蓋當(dāng)前屏幕上的內(nèi)容的方法...2007-03-03WMI 創(chuàng)建系統(tǒng)服務(wù)的實(shí)現(xiàn)代碼(Automatic)
需要注意的是啟動(dòng)模式,應(yīng)為“Automatic”,而不是“Auto”2013-07-07用VBS模擬實(shí)現(xiàn)PHP的sha1_file函數(shù)效果代碼
用VBS模擬實(shí)現(xiàn)PHP的sha1_file函數(shù)效果代碼,需要的朋友可以參考下。2011-01-0115分鐘學(xué)會(huì)vbscript中的正則表達(dá)式
這篇文章主要介紹了15分鐘學(xué)會(huì)vbscript中的正則表達(dá)式,需要的朋友可以參考下2018-06-06