| 4D v18ST Get content type | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v18
 ST Get content type 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ST Get content type ( {* ;} objeto {; inicioSel {; fimSel {; inicioBloq {; fimBloq}}}} ) -> Resultado | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| * | Operador |   | Se especificado, objeto é um nome de objeto (cadeia) Se omitido, objeto é um campo ou uma variável | |||||
| objeto | Objeto de formulário |   | Nome de objeto (se * for especificado) ou Campo ou variável (se * for omitido) | |||||
| inicioSel | Inteiro longo |   | Inicio da seleção | |||||
| fimSel | Inteiro longo |   | Fim da seleção | |||||
| inicioBloq | Inteiro longo |   | Inicio de posição do primeiro tipo da seleção | |||||
| fimBloq | Inteiro longo |   | Fim de posição do primeiro tipo da seleção | |||||
| Resultado | Inteiro longo |   | Tipo de conteúdo | |||||
O comando ST Get content type devolve o tipo de conteúdo encontrado no campo ou a variável de texto multi estilo designada pelo parâmetro objeto .
Se passar o parâmetro opcional * indica que o parâmetro objeto é  um nome de objeto (cadeia). Durante a execução, se o objeto tem o foco, o comando devolve a informação do objeto que se está  editando, e se o objeto não tem o foco, o comando devolve a  informação da fonte de dados do objeto (variável ou campo).
Se omitir o parâmetro *, indica que o parâmetro objeto é  um campo ou uma variável. Neste caso, se passar uma referência de campo ou  variável no lugar de uma cadeia. Durante a execução, o comando  devolve a informação da variável ou do campo.
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 etiquetas de estilo que podem estar presentes.
| Constante | Tipo | Valor | Comentário | 
| ST End highlight | Inteiro longo | -1001 | Designa o último caractere da seleção atual de texto no objeto (*) | 
| ST End text | Inteiro longo | 0 | Designa o último caractere do texto contido no objeto | 
| ST Start highlight | Inteiro longo | -1000 | Designa o primeiro caractere da seleção atual de texto no objeto (*) | 
| ST Start text | Inteiro longo | 1 | Designa 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 a um campo ou  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.
| Constante | Tipo | Valor | Comentário | 
| ST Expression type | Inteiro longo | 2 | A seleção contém só uma referência de expressão | 
| ST Mixed type | Inteiro longo | 3 | A seleção contém pelo menos dois tipos de conteúdos diferentes | 
| ST Picture type | Inteiro longo | 6 | A seleção contém só uma imagem (áreas 4D Write Pro unicamente) | 
| ST Plain type | Inteiro longo | 0 | A seleção contém texto e nenhuma referência | 
| ST Unknown tag type | Inteiro longo | 4 | A seleção contém só uma etiqueta de tipo desconhecido | 
| ST URL type | Inteiro longo | 1 | A seleção contém só uma referência de URL | 
| ST User type | Inteiro longo | 5 | A seleção contém apenas uma referência personalizada | 
Você deseja mostrar os comandos de um menu contextual baseado no tipo de conteúdo selecionado na área.
 Case of
    :(Form event code=On Clicked)
  //recuperamos a seleção
       GET HIGHLIGHT(*;"myText";startSel;endSel)
       If(Contextual click & (Macintosh control down=False)) //chama o menu contextual
          If(startSel=endSel) // sem conteúdo selecionado
  //ativamos unicamente certos comandos
             DISABLE MENU ITEM(<>menu_STYLEDTEXT;2)
             DISABLE MENU ITEM(<>menu_STYLEDTEXT;4)
             ENABLE MENU ITEM(<>menu_STYLEDTEXT;6)
             ...
          Else // obtemos o tipo de conteúdo
             CT_Texttype:=ST Get content type(*;"myText";startSel;endSel)
             Case of // processamento de tipos diferentes
                :(CT_Texttype=ST URL type)
                   DISABLE MENU ITEM(<>menu_STYLEDTEXT;6)
                   ENABLE MENU ITEM(<>menu_STYLEDTEXT;7)
                   ...
                :(CT_Texttype=ST Expression type)
                   DISABLE MENU ITEM(<>menu_STYLEDTEXT;6)
                   DISABLE MENU ITEM(<>menu_STYLEDTEXT;7)
                   ...
                Else
                   ENABLE MENU ITEM(<>menu_STYLEDTEXT;6)
                   DISABLE MENU ITEM(<>menu_STYLEDTEXT;7)
                   ...
             End case
          End if
          GET MOUSE($xCoord;$yCoord;$ButtonState)
          $AlphaVar:=Dynamic pop up menu(<>menu_STYLEDTEXT;"";$xCoord;$yCoord)
          startSel:=-3
          endSel:=-3
       End if
       ...
    End if
	Produto: 4D
	Tema: Texto multi estilo
	Número 
        1286
        
        
        
	
	Criado por: 4D v14
	Modificado: 4D v14 R5
	Manual de linguagem 4D ( 4D v18)
	
	
	
 Adicionar um comentário
Adicionar um comentário