Re: [AHK-] 編輯變數名稱(擷取部分)

作者: shyangs (厚呦)   2012-07-22 15:39:26
https://sites.google.com/site/autohotkeytw/Variables
https://sites.google.com/site/autohotkeytw/commands/SetExpression
表達式中,
用雙引號( "...字串...." )包起來的就是字串;
符合數學上整數、小數定義的就是數值,16進制例如 0xFF 也是數值;
字首為英文字母、底線("_"),其後接續英文字母、數字、底線,就是變數,例如:_var2_
;前面那句話是比較嚴格的語言要求,AHK_L 你用 0ㄉv 當變數也可以正常執行,
但我不建議這樣命名。
事實上,變數名稱是不能修改的,能修改的只有字串。
但 AHK 有可變變數(variable variables),我們可以用字串當變數名。
之前我的回答,不知道你有沒有注意到
function("eatapple", now) ;第一個參數不是變數,而是字串。
if (%x% - y <= 0) ;這裡是取出 x 的內容(字串"eatapple")當變數減去另一個變數。
x := "H" . a ;這裡事實上修改的是字串,
x := %x% ;再把修改完的字串當變數,提出變數內容指派給 x
所以第一個問題,
hello := "world"
func(hello)
func(xR)
{
MsgBox, xR ;為什麼會直接顯示 xR,而不是 hello
}
解答是
hello := "world"
func("hello") ;用字串當參數
func(xR)
{
MsgBox,% xR ;強制表達式
}
第二個問題,
Gui, Add, Text,% "x11 y14 w430 h70 " . function(eatapple,now) , abc
¯ <
作者: KTiC (關西觀光資訊服務中心)   2012-07-24 21:20:00
太感謝了! 問題都解決了^_^

Links booklink

Contact Us: admin [ a t ] ucptt.com