2015-06-15 30 views
0

我嘗試在begin {equation}和end {equation}之間隱藏文本。我正在使用下面的代碼,它正在工作。但是我的問題是隻有一次開始{方程式}和結束{方程式}纔有效,那麼它不起作用。如何使用Livecode隱藏多行

on mouseUp 
     put wordOffset("begin{equation}",fld "MyField") into tBegin 
     put wordOffset("end{equation}",fld "MyField") into tEnd 
      set the hidden of line tBegin to tEnd of fld "MytextField" to true 
    end mouseUp 

回答

2

查看LC詞典中wordOffset的'wordsToSkip'參數。如果你不管理它,並且有幾組方程文本可以找到,那麼你的代碼將總是找到它,並在它找到的第一個匹配處停下來。

您有兩種方法可以處理方程文本的多個實例 - 編輯要繼續搜索的文本或使用'wordsToSkip'參數。

首先使用帶有'if'語句的重複循環來查找要搜索的文本中包含多少個'begin {equation}標記實例。然後設置另一個重複循環並使用方法a)或b)...

方法a)不要使用'wordsToSkip',將要搜索的文本複製到一個臨時變量中,然後直接刪除所有文本以前發現的任何旗幟。

方法b)保持要整個搜索的文本,並將以前找到的實例的端點的字符數+ 1放置在'wordsToSkip'參數中。

+0

請你舉個例子。 – Shalu