|
jackyui 發表於 Dec 15, 2016 1:33:54 GMT
我想用 Find的函數所找出來的 圖形位置資訊來做一個動態判斷位置 用在這個函數位置上 Region(200, 1200, 350, 130) 不過想要再做第二次分割卻出現錯誤狀況...是哪裡出錯了嗎? function mysplit(inputstr, sep) if sep == nil then sep = "%s" end
local t={} ; i=0
for str in string.gmatch(inputstr, "([^"..sep.."]+)")
do t[i] = str i = i + 1 end return t end
Mytest = find("mytemp2.png")
mytest1 = nil
if Mytest ~= nil then
mytest1 = mysplit(Mytest,",") print(Mytest) print(mytest1(0))
end
Mytest = find("mytemp2.png") mytest1 = mysplit(Mytest,",")
在紅字的地方 會出現 座標 與圖形 的一些資訊...
到了藍色的地方就會出錯
出錯的圖形如下
[/i]
|
|
|
jackyui 發表於 Dec 16, 2016 17:56:43 GMT
網路上找到的資料 跟自己的測試
大概知道是關於 指針問題 (pointer) 我嘗試用寫入檔案方式結果看到檔案內的資料. 跟 Print 顯示的資料不同.
而網路幾乎找不到我想要的資料.就算找到也都是 C語言.
|
|
|
AnkuLua 發表於 Dec 17, 2016 0:41:19 GMT
不知您要做甚麼,但是可以用getX(), getY(), getW(), getH() 得到找到圖形的左上角座標與大小 例如 print(Mytest:getX()) print(Mytest:getY())
string.gmatch 第一個參數需要是字串(string) find 的返回值是 Match 可以用 mytest1 = mysplit(Mytest:toString(),",")
建議先看看 print(Mytest) 的字串
|
|
|
jackyui 發表於 Dec 17, 2016 1:44:00 GMT
感謝 ^_^ 原來還有 GetW, GetH 這兩個可以用 我以為 只有X,Y能用... 然後看到 你的寫法 mytest1 = mysplit(Mytest:toString(),",") 我才知道我一直用錯誤的方式.... 我是
mytest1 = mysplit(tostring(Mytest),",")
|
|