2013-05-06 67 views
0

我試圖給一個數組分配一個十六進制顏色值。這是不可能的,因爲當我分配值時,它被改爲一個數字。下面是這樣的代碼:數組將字符串的值更改爲數字

settings := {myColor: "color"} 

myColor := "color" 

settingName := "myColor" 
settingValue := "0x00FF00" 


%settingName% := settingValue 
settings[settingName] := settingValue 

e := settings[settingName] 
MsgBox %e% - %settingValue% 
;Displays 65280 - 0x00FF00 

回答

0

我想你在第5行代碼中出錯了。您定義的變量不會得到%符號。

settings := {myColor: "color"} 
myColor := "color" 

settingName := "myColor" 
settingValue := "0x00FF00" 

settingName = %settingValue% ; Alternative 1 
settingName := settingValue ; Alternative 2 
settings[settingName] := settingValue 
e := settings[settingName] 
MsgBox % e " - " settings[settingName] " - " settingValue 
;Displays 0x00FF00 - 0x00FF00 - 0x00FF00 
ExitApp 

雖然我認爲你想:設置[MyColor] = 0x00FF00,你現在有設置[0x00FF00] = 0x00FF00。

settings := {myColor: "color"} 
myColor := "color" 

settingName := "myColor" 
settingValue := "0x00FF00" 
settings[settingName] := settingValue 

MsgBox % settings[settingName] " - " settingValue 
;Displays 0x00FF00 - 0x00FF00 
ExitApp