好了,我們的值賦給一個變量:
eval_this:= "harry"
如果你這樣說,你剛纔讀的變量的內容:
msgbox %eval_this% ;=harry
當然,在這裏,文本不評價 - 「eval_this」只是文字AHK:
msgbox eval_this ;= eval_this
這種方法被稱爲「強制表達」 - 這是你正在做的。它試圖讀取文本字符串,就好像它是代碼一樣。它不讀任何變量的內容,它是看文本,並迫使其成爲一個變量(它的同樣的事情排序,但不是真的)
msgbox % eval_this ;= harry
這也會讓我們哈利,你可以看到我們是如何讀取變量:
test := eval_this
msgbox %test% ;=harry
同一件事情,不同的方法(強制文本成爲一個變量):
test = % eval_this
msgbox %test% ;=harry
考慮這一點,我們迫使兩個文本串入T繼承人實際值
eval_this := "harry"
this_too := " and bob"
test = % eval_this this_too
msgbox %test% ;= harry and bob
好吧,現在你已經掌握了所有這些,這裏有一個實際應用。我們將強制將文本字符串的值作爲變量。既然我們已經定義了什麼「alert」,那麼gosub會調用這個定義。將其放入腳本並運行它:
eval_this := "alert"
gosub % eval_this
exit ;we are finished with the demo, so end here
alert:
msgbox harry
return