Histórico da Página
...
Pagetitle | ||||
---|---|---|---|---|
|
Conta a quantidade de linhas de um campo memo ou string com múltiplas linhas, considerando um numero máximo de letras por linha, tamanho estimado para caracteres de tabulação, e quebras de linhas CRLF (pulo de linha) dentro do texto.
Sintaxe
Bloco de código |
---|
nLin := MLCount(<cText>, [nLinLen], [nTabSize], [lQuebra]) |
Parâmetros
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
cText | Caracter | Indica o texto com múltiplas linhas para verificar a quantidade de linhas. | X |
nLinLen | Numérico | Especifica o número de caracteres por linha para que ocorra a quebra de linhas. (Default: 79) | |
nTabSize | Numérico | Define um tamanho para tabulação. (Default: 4) | |
lQuebra | Lógico | Especifica o comportamento de contagem de linhas quando a ultima palavra não cabe inteira na linha atual. |
...
Retorno
Nome | Tipo | Descrição |
---|---|---|
nLin | Numérico | Retorna o número de linhas da string considerando os parâmetros de formatação informados. |
Exemplo
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
User function POCMEMOL()
Local i, nTam , nLin, nLin2
Local cString
cString := "Lorem ipsum dolor sit amet, urna nullafusce vehicula porttitor lobortis "
cString += "sapien, eget taciti nam tincidunt viverra saepe, eleifend et neque "
cString += "justonunc adipiscing. Eget eu ut sed est sed accumsan, sit sed ultrices id "
cString += "scelerisque ullamcorper at, sodales accumsan et per blandit et, enim "
cString += "porta metus voluptatem luctus wisi, vel nunc tellus pellentesque "
cString += "tincidunt urn."
nTam := len(cString)
conout( "Tamanho da String = " + cValToChar(nTam))
nLin := mlcount(cString,40)
conout( "Total de Linhas ( sem quebrar palavras ) = " +cValToChar( nLin ))
For i := 1 to nLin
conout( "Linha "+ str(i,2) +" ["+memoline(cString,40,i)+"]")
Next
nLin2 := mlcount(cString,40,,.F.)
conout( "Rotal de Linhas ( quebrando as palavras ) = " +cValToChar( nLin2 ))
For i := 1 to nLin2
conout( "Linha "+ str(i,2) +" ["+memoline(cString,40,i,,.F.)+"]")
Next
Return |
...
|
...
No exemplo acima, o resultado esperado segue abaixo:
...
Sem Formato |
---|
Tamanho da String = 362 |
...
Total de Linhas ( sem quebrar palavras ) = 10 |
...
Linha 1 [Lorem ipsum dolor sit amet, urna ] |
...
Linha 2 [nullafusce vehicula porttitor lobortis ] |
...
Linha 3 [sapien, eget taciti nam tincidunt ] |
...
Linha 4 [viverra saepe, eleifend et neque ] |
...
Linha 5 [justonunc adipiscing. Eget eu ut sed est] |
...
Linha 6 [sed accumsan, sit sed ultrices id ] |
...
Linha 7 [scelerisque ullamcorper at, sodales ] |
...
Linha 8 [accumsan et per blandit et, enim porta ] |
...
Linha 9 [metus voluptatem luctus wisi, vel nunc ] |
...
Linha 10 [tellus pellentesque tincidunt urn. ] |
...
Rotal de Linhas ( quebrando as palavras ) = 9 |
...
Linha 1 [Lorem ipsum dolor sit amet, urna nullafu] |
...
Linha 2 [sce vehicula porttitor lobortis sapien, ] |
...
Linha 3 [eget taciti nam tincidunt viverra saepe,] |
...
Linha 4 [eleifend et neque justonunc adipiscing. ] |
...
Linha 5 [Eget eu ut sed est sed accumsan, sit sed] |
...
Linha 6 [ultrices id scelerisque ullamcorper at, ] |
...
Linha 7 [sodales accumsan et per blandit et, enim] |
...
Linha 8 [porta metus voluptatem luctus wisi, vel ] |
...
Linha 9 [nunc tellus pellentesque tincidunt urn. ] |
...
...