2016-05-16 64 views
0

我有一個程序,它將變量「x」設置爲隨機字典詞的長度,然後應該將「a」放入字段x中的時代。不過,我不確定我的語法是對還是錯。變量randomword已經定義並且工作。我的非工作代碼如下:如何在Livecode中重複字符串'x'的次數

global x 
    on mouseUp 
     put length(randomword) into x 
     put repeatedString("a",x) into field "wordDisplay" 
    end mouseUp 

但是,當我在單擊我的按鈕後查看wordDisplay時,它是空白的。解釋爲什麼,並解決這個問題的代碼將是非常有益的。

乾杯。

回答

0

你不會說'repeatedString'是一個你從別的地方調用的函數,但是如果我明白你想要做的事情,你可以嘗試類似這樣的方式,將'a'放入臨時變量:

put length(randomword) into x 
repeat x 
    put "a" after temp 
end repeat 
set text of field "wordDisplay" to temp 

而且,我猜是這樣,而是利用全球的唯一原因是,如果你打算在多個對象的腳本中使用x的值。如果您在此腳本中只使用'x',則不需要變量聲明。

+0

謝謝!這應該解決我的問題。 – notHalfBad

0

我的書「編程LiveCode爲真正初學者」的第227頁包含以下有用的功能,這不正是你想要什麼:

function repeatChar theChar,theAmount 
    local myLongString 
    set the itemDel to theChar 
    put theChar into item theAmount of myLongString 
    return myLongString 
end repeatChar 

需要注意的是重複循環是沒有必要的。

使用功能,在你的腳本是這樣的:

global randomWord 
on mouseUp 
    local x 
    put length(randomWord) into x 
    put repeatChar("a",x) into field "wordDisplay" 
end mouseUp