vbs+hta中實現在單個 onClick 參數中包括多個子常式的代碼_vbs

來源:互聯網
上載者:User
問:
您好,指令碼專家! 在您的 HTA 樣本中,您為我們展示了如何單擊一個按鈕使一個子常式得以運行。 那麼,如何向一個按鈕的 onClick 參數添加兩個或多個子常式呢?

-- FM

答:
您好,FM。您知道,在認知心理學中有一個有趣的分支,稱為問題發現;其理論是您回答問題的能力通常首先取決於您問到的問題。 例如,您 – 以及其他幾個人 – 想要知道如何在一個按鈕的 onClick 參數中指定多個子常式。 我們見過人們嘗試對代碼做出各種修改,以下就是一個例子:

<input type="button" value="Run Button" onClick="Script_1; Script_2; Script_3">

正如您所見,這不能解決問題。

那麼讓我們將發現問題的技能應用到測試中,看看是否能夠用其它方式來描述該問題。 (通常,指令碼專家無需發現問題;問題會設法找到我們。) 下面是問題的關鍵所在: 我們是真的要向 onClick 參數添加多個子常式,還是僅想要在任何時候單擊按鈕時能夠運行多個子常式?

如果是後者,我們有下面的答案:

複製代碼 代碼如下:

<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> 
注意: 前面的代碼被設計為從一個 HTA(HTML 應用程式)運行。 如果想要測試該代碼,只需複製該指令碼,將其粘貼到記事本或者其它的文字編輯器,並且用 .HTA 副檔名儲存。


如果粗略地看一下該代碼,您可能會注意到按鈕的 HTML 標記:

<input type="button" value="Run Button" onClick="RunScripts">

正如您所見到的那樣,我們僅在 onClick 參數中指定了一個單一子常式 (RunScripts)。 哦,但是看一下子常式 RunScripts 的代碼:

Sub RunScripts
    Script_1
    Script_2
    Script_3
End Sub

答案就在這裡。 在該子常式中我們所做的就是調用其它三個子常式: Script_1、Script_2 和 Script_3。這就是我們如何從一個按鈕的單擊事件中運行多個子常式的方法: 我們並不把所有那些子常式都放入 onClick 參數中,而是將其放入 onClick 所調用的單個子常式中。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.