Saltar para o conteúdo principal
Versão: Próximo

ST COMPUTE EXPRESSIONS

ST COMPUTE EXPRESSIONS ( {* ;} objeto {; inicioSel {; fimSel}} )

ParâmetroTipoDescrição
*OperadorSe especificado, objeto é um nome de objeto (cadeia) Se omitido, objeto é um campo ou uma variável
objetoanyNome de objeto (se * for especificado) ou
Campo ou variável (se * for omitido)
inicioSelIntegerInicio da seleção
fimSelIntegerFim da seleção

Esse comando não é seguro para thread e não pode ser usado em código adequado.

Descrição

O comando ST COMPUTE EXPRESSIONS atualiza as expressões dinâmicas 4D encontradas no campo ou variável com multi-estilo ou 4D Write Pro definido pelo parâmetro objeto.

Para obter mais informação sobre as expressões 4D utilizadas em áreas de texto de multi estilo ou 4D Write Pro, consulte a descrição do comando ST INSERT EXPRESSION.

O comando torna a avaliar o resultado das expressões presentes no objeto em função do contexto atual e mostra o resultado obtido. Por exemplo, se a expressão introduzida é a hora, o valor se modifica cada vez que se chama ao comando ST COMPUTE EXPRESSIONS. As expressões também se calculam:

  • quando se inserem
  • cuando se carrega o objeto
  • quando estão "congeladas" com o comando ST FREEZE EXPRESSIONS, se passar o segundo parâmetro *. ST COMPUTE EXPRESSIONS Não modifica o texto com estilo (que contém etiquetas span), e sim só o texto sem formato mostrado em objeto. Os valores calculados não se armazenam no texto com estilo, só sua referência se armazena ali.

Se passar o parâmetro opcional * indica que o parâmetro objeto é um nome de objeto (cadeia). Se não passar este parâmetro, indica que o parâmetro objeto é um campo ou uma variável. Neste caso, se passar uma referência de campo ou de variável no lugar de uma cadeia.

Não é necessário que objeto tenha o foco, no entanto, o objeto deve estar incluído em um formulário, ou caso contrário o comando ST COMPUTE EXPRESSIONS não tem nenhum efeito.

Nota: Se o objeto designar um documento 4D Write Pro, será computado pelo comando mesmo se não tiver sido aberto em um objeto de formulário (ver Expressões de Imagem).

Os parâmetros opcionais inicioSel e fimSel designam uma seleção de texto em objeto. Os valores inicioSel e fimSel expressam uma seleção de texto plano, sem ter em conta as etiquetas de estilo ou referências que possam estar presentes. Tenha em conta que uma referência é equivalente a um único caractere.

  • Se passar inicioSel e fimSel, ST COMPUTE EXPRESSIONS só atualiza as expressões situadas dentro desta seleção.
  • Se passar unicamente inicioSel ou se o valor de fimSel é maior que o número total de caracteres no objeto, todas as expressões entre inicioSel e o final do texto se calculam.
  • Se omite inicioSel e fimSel, todas as expressões incluídas na seleção usuário de objeto se calculam. 4D oferece constantes pré definidas para que possa designar automaticamente os limites de seleção nos parâmetros inicioSel e fimSel. Estas constantes se encontram no tema "Texto multi estilo":
ConstanteTipoValorComentário
ST End highlightInteiro longo-1001Designa o último caractere da seleção atual de texto no objeto (*)
ST End textInteiro longo0Designa o último caractere do texto contido no objeto
ST Start highlightInteiro longo-1000Designa o primeiro caractere da seleção atual de texto no objeto (*)
ST Start textInteiro longo1Designa o primeiro caractere do texto contido no objeto

(*) Deve passar um nome de objeto em objeto para poder utilizar esta constante. Se passar uma referência de campo ou de variável, o comando se aplica a todo o texto do objeto.

Nota: se inicioSel é maior que fimSel (exceto quando fimSel é 0), o comando não faz nada e a variável OK toma o valor 0.

Exemplo

Você deseja atualizar as referências incluídas na seleção de texto:

 ST COMPUTE EXPRESSIONS(*;"myText";ST Start highlight;ST End highlight)

Ver também

ST FREEZE EXPRESSIONS
ST INSERT EXPRESSION