- Are there any other functions that work like SendMessage?
- I kept having surprising bugs in a script I was working on, and it was this issue each time. A classic example is when you parse an options parameter (a space/tab-separated list).
Code: Select all
q:: ;select chars (works)
SendMessage(0xB1, 5, 10, "Edit1", "A") ;EM_SETSEL := 0xB1
return
w:: ;select chars (works)
vText := "5,10"
oArray := StrSplit(vText, ",")
SendMessage(0xB1, oArray.1+0, oArray.2+0, "Edit1", "A") ;EM_SETSEL := 0xB1
return
e:: ;select chars (doesn't work)
vText := "5,10"
oArray := StrSplit(vText, ",")
SendMessage(0xB1, oArray.1, oArray.2, "Edit1", "A") ;EM_SETSEL := 0xB1
return
r:: ;select chars (doesn't work)
vText := "5,10"
vPos := SubStr(vText, ",")
vNum1 := SubStr(vText, 1, vPos-1)
vNum2 := SubStr(vText, vPos+1)
SendMessage(0xB1, vNum1, vNum2, "Edit1", "A") ;EM_SETSEL := 0xB1
return
t:: ;select chars (doesn't work)
vText := "5,10"
if RegExMatch(vText, "^(\d+),(\d+)$", oArray)
SendMessage(0xB1, oArray.1, oArray.2, "Edit1", "A") ;EM_SETSEL := 0xB1
return
y::
MsgBox(Type(3)) ;Integer
MsgBox(Type("3")) ;String
return