Saltar para o conteúdo principal
Versão: 20 R6

Objetos


Tipo

CONFIGURAÇÃO OBRIGATÓRIA

Esta propiedad designa el tipo del objeto formulario activo o inactivo.

Gramática JSON

NomeTipo de dadosValores possíveis
typestring"button", "buttonGrid", "checkbox", "combo", "dropdown", "groupBox", "input", "line", "list", "listbox", "oval", "picture", "pictureButton", "picturePopup", "plugin", "progress", "radio", "rectangle", "ruler", "spinner", "splitter", "stepper", "subform", "tab", "text", "view", "webArea", "write"

Objectos suportados

Área 4D View Pro - Área 4D Write Pro - Botão - Grade de botões - Caixa de seleção - Combo Box - Lista suspensa - Group Box - Lista hierárquica - List Box - Coluna List Box - Rodapie List Box - Cabeçalho de List Box - Botão de imagem - Menu pop-up com imagem - Área de Plug-in - Indicador de progresso - Botão de opção - Spinner - Separador - - Etapas - Subformulário - Control de pestañas - Área de texto - Área web


Nome de objeto

Cada objeto de formulário ativo está associado a um nome de objeto. Cada nome de objeto deve ser único.

Os nomes dos objectos estão limitados a um tamanho de 255 bytes.

Ao usar a linguagem 4D, você pode se referir a um objeto de formulário ativo pelo nome do objeto (para obter mais informações sobre isso, consulte Propriedades Objeto no manual de referência da linguagem 4D).

Para obter mais informações sobre regras de nomenclatura para objetos de formulário, consulte a seção Identificadores.

Gramática JSON

NomeTipo de dadosValores possíveis
namestringQualquer nome permitido que não pertença a um objeto já existente

Objectos suportados

Área 4D View Pro - Área 4D Write Pro - Botão - Grade de botões - Caixa de seleção - Combo Box - Lista suspensa - Group Box - Lista hierárquica - List Box - Coluna List Box - Rodapie List Box - Cabeçalho de List Box - Botão de imagem - Menu pop-up com imagem - Área de Plug-in - Indicador de progresso - Spinner - Separador - Imagem estática - Etapas - Botão de opção - Subformulário - Control de pestañas - Área de texto - Área web


Guardar valor

Esta propriedade está disponível quando a opção Salvar Geometria está marcada para o formulário.

Essa funcionalidade só é suportada por objetos que contribuam para a geometria geral do formulário. Por exemplo, essa opção está disponível para caixas de seleção porque seu valor pode ser usado para ocultar ou exibir áreas adicionais na janela.

Eis a lista de objetos cujo valor pode ser guardado:

ObjectValor guardado
Caixa de seleçãoValor da variável associada (0, 1, 2)
Lista suspensaNúmero da linha seleccionada
Botão de rádioValor da variável associada (1, 0, True ou False para os botões, consoante o seu tipo)
Controle de guiasNúmero da aba selecionada

Gramática JSON

NomeTipo de dadosValores possíveis
memorizeValuebooleantrue, false

Objectos suportados

Casilla de selección - Lista desplegable - Botón de radio - Control de pestañas


Variável ou expressão

Consulte também Expression para colunas do list box do tipo seleção e coleção.

Esta propriedade especifica a fonte dos dados. Cada objeto de formulário ativo está associado a um nome de objeto e a um nome de variável. O nome da variável pode diferir do nome do objeto. No mesmo formulário, você pode usar a mesma variável várias vezes, mas cada nome do objeto deve ser exclusivo.

O tamanho do nome da variável é limitado a 31 bytes. Consulte a seção Identificadores para obter mais informações sobre regras de nomenclatura.

As variáveis de objeto do formulário permitem controlar e monitorar os objetos. Por exemplo, quando um botão é clicado, sua variável é definida como 1; em todos os outros momentos, ela é 0. A expressão associada a um indicador de progresso permite que você leia e altere a configuração atual.

As variáveis ou expressões podem ser digitáveis ou não digitáveis e podem receber dados do tipo Texto, Inteiro, Numérico, Data, Hora, Imagem, Booliano ou Objeto.

Gramática JSON

NomeTipo de dadosValores possíveis
dataSourcestring ou array de strings
  • Variável 4D, nome de campo ou qualquer expressão.
  • String vazia para variáveis dinâmicas.
  • Matriz de strings (coleção de nomes de matriz) para uma coluna hierarchical listbox]
  • Expressões

    Você pode usar uma expressão como fonte de dados para um objeto. Se permite toda expresión 4D válida: expresión simple, propiedad de objeto, fórmula, función 4D, nombre de método proyecto o campo que utilice la sintaxis estándar [Table]Field. A expressão é avaliada quando o formulário é executado e reavaliada para cada evento do formulário. Tenga en cuenta que las expresiones pueden ser asignables o no asignables.

    Se o valor inserido corresponder tanto a um nome de variável quanto a um nome de método, 4D considera que você está indicando o método.

    Variáveis dinâmicas

    Você pode deixar a cargo de 4D a criação de variáveis associadas aos objetos do formulário (botões, variáveis inseríveis, caixas de seleção etc.) dinamicamente e de acordo com suas necessidades. Para ello, basta con dejar en blanco la propiedad "Variable o expresión" (o el campo JSON de dataSource).

    Quando uma variável não é nomeada, quando o formulário é carregado, 4D cria uma variável para o objeto, com um nome calculado único no espaço das variáveis de processo do intérprete (o que significa que esse mecanismo pode ser usado mesmo no modo compilado). Esta variável temporária será destruída quando o formulário for fechado. Para que este princípio funcione em modo compilado, é imperativo que as variáveis dinâmicas sejam explicitamente tipadas. Há duas formas de o fazer:

    • Você pode definir o tipo usando a propriedade Tipo de expressão.
    • Você pode usar um código de inicialização específico quando o formulário for carregado, usando, por exemplo, o comando VARIABLE TO VARIABLE:
     If(Form event code=On Load)
    var $init : Text
    $Ptr_object:=OBJECT Get pointer(Object named;"comments")
    $init:=""
    VARIABLE TO VARIABLE(Current process;$Ptr_object->;$init)
    End if

    En el código 4D, se puede acceder a las variables dinámicas utilizando un puntero obtenido con el comando OBJECT Get pointer. Por exemplo:

      // atribuir a hora 12:00:00 à variável do objeto "tstart"
    $p :=OBJECT Get pointer(Object named;"tstart")
    $p->:=?12:00:00?

    Este mecanismo tem duas vantagens:

    • Por um lado, ele permite o desenvolvimento de componentes do tipo "subformulário" que podem ser usados várias vezes no mesmo formulário host. Tomemos como exemplo o caso de um subformulário datepicker que é inserido duas vezes em um formulário host para definir uma data inicial e uma data final. Esse subformulário usará objetos para escolher a data do mês e do ano. Será necessário que esses objetos trabalhem com variáveis diferentes para a data de início e a data de término. Permitir que 4D crie sua variável com um nome exclusivo é uma forma de resolver essa dificuldade.
    • Por outro lado, pode ser utilizado para limitar a utilização da memória. De facto, os objectos formulário só funcionam com variáveis processo ou inter-processo. No entanto, no modo compilado, uma instância de cada variável de processo é criada em todos os processos, incluindo os processos do servidor. Essa instância ocupa memória, mesmo quando o formulário não é usado durante a sessão. Portanto, permitir que 4D crie variáveis dinamicamente ao carregar os formulários pode economizar memória.

    List box array

    For an array list box, the Variable or Expression property usually holds the name of the array variable defined for the list box, and for each column. However, you can use a string array (containing arrays names) as dataSource value for a list box column to define a hierarchical list box.

    Objectos suportados

    Área 4D View Pro - Área 4D Write Pro - Botão - Grade de botões - Caixa de seleção - Combo Box - Lista suspensa - Lista hierárquica - List Box - Coluna List Box - Cabeçalho List Box - Rodapie de List Box - Menu pop-up com imagem - Área de Plug-in - Indicador de progresso - Botão de opção - Seletor - Separador - Etapas - Subformulário - Controle de tabulação - Área web


    Tipo de expressão

    This property is called Data Type in the Property List for selection and collection type list box columns and for Drop-down Lists associated to an object or an array.

    Specify the data type for the expression or variable associated to the object. Note that main purpose of this setting is to configure options (such as display formats) available for the data type. Não digita efetivamente a variável em si. De cara a la compilación del proyecto, debe declarar la variable.

    No entanto, essa propriedade tem uma função de digitação nos seguintes casos específicos:

    • Variáveis dinâmicas: você pode usar essa propriedade para declarar o tipo de variáveis dinâmicas.
    • Columnas List Box : esta propiedad se utiliza para asociar un formato de visualización a los datos de la columna. The formats provided will depend on the variable type (array type list box) or the data/field type (selection and collection type list boxes). The standard 4D formats that can be used are: Alpha, Numeric, Date, Time, Picture and Boolean. O tipo de texto não tem formatos de visualização específicos. Também estão disponíveis quaisquer formatos personalizados existentes.
    • Variables imagen: puede utilizar este menú para declarar las variables antes de cargar el formulario en modo interpretado. Specific native mechanisms govern the display of picture variables in forms. Estos mecanismos exigen una mayor precisión a la hora de configurar las variables: a partir de ahora, deberán haber sido declaradas antes de cargar el formulario -es decir, incluso antes del evento de formulario On Load - a diferencia de otros tipos de To do this, you need either for the statement C_PICTURE(varName) to have been executed before loading the form (typically, in the method calling the DIALOG command), or for the variable to have been typed at the form level using the expression type property. Otherwise, the picture variable will not be displayed correctly (only in interpreted mode).

    Gramática JSON

    NomeTipo de dadosValores possíveis
    dataSourceTypeHintstring
  • standard objects: "integer", "boolean", "number", "picture", "text", date", "time", "arrayText", "arrayDate", "arrayTime", "arrayNumber", "collection", "object", "undefined"
  • list box columns: "boolean", "number", "picture", "text", date", "time". Array/selection list box only: "integer", "object"
  • Objectos suportados

    Check Box - Combo Box - Drop-down List - Input - List Box Column - List Box Footer - Plug-in Area - Progress indicator - Radio Button - Ruler - Spinner - Stepper - Subform - Tab Control


    Classe CSS

    Lista de palabras separadas por espacios que se utilizan como selectores de clase en los archivos css.

    Gramática JSON

    NomeTipo de dadosValores possíveis
    "class"stringUma cadeia de caracteres com o(s) nome(s) do CSS separados por caracteres de espaço

    Objectos suportados

    4D View Pro area - 4D Write Pro area - Button - Button Grid - Check Box - Combo Box - Drop-down List - Group Box - Hierarchical List - List Box - Picture Button - Picture Pop-up Menu - Plug-in Area - Radio Button - Static Picture - Subform - Text Area - Web Area


    Seleção de entidade ou coleção

    To use collection elements or entities to define the row contents of the list box.

    Insira uma expressão que retorne uma coleção ou uma seleção de entidades. Usually, you will enter the name of a variable, a collection element or a property that contain a collection or an entity selection.

    A coleção ou a seleção da entidade deve estar disponível para o formulário quando for carregada. Each element of the collection or each entity of the entity selection will be associated to a list box row and will be available as an object through the This keyword:

    • si ha utilizado una colección de objetos, puede llamar a This en la expresión de la fuente de datos para acceder a cada valor de propiedad, por ejemplo This.<propertyPath>.
    • si ha utilizado una selección de entidades, puede llamar a This en la expresión de la fuente de datos para acceder a cada valor de atributo, por ejemplo This.<attributePath>.

    Si ha utilizado una colección de valores escalares (y no objetos), 4D le permite mostrar cada valor llamando a This.value en la expresión datasource. However in this case you will not be able to modify values or to access the current object (see below).

    Gramática JSON

    NomeTipo de dadosValores possíveis
    dataSourcestringExpressão que devolve uma coleção ou uma seleção de entidades.

    Objectos suportados

    List Box


    Fonte de dados

    Especifique o tipo de list box.

    • Arrays(por defecto): utiliza elementos de array como líneas del list box.
    • Selección actual: utiliza expresiones, campos o métodos cuyos valores se evaluarán para cada registro de la selección actual de una tabla.
    • Selección temporal: utiliza expresiones, campos o métodos cuyos valores se evaluarán para cada registro de una selección temporal.
    • Colección o Selección de entidades: utilice elementos de colección o entidades para definir el contenido de las líneas del list box. Tenga en cuenta que con este tipo de list box, debe definir la propiedad Colección o Selección de entidades.

    Gramática JSON

    NomeTipo de dadosValores possíveis
    listboxTypestring"array", "currentSelection", "namedSelection", "collection"

    Objectos suportados

    List Box


    Tipo de plug-in

    Nombre del área externa del plug-in asociada al objeto. Plug-in external area names are published in the manifest.json file of the plug-in.

    Gramática JSON

    NomeTipo de dadosValores possíveis
    pluginAreaKindstringNome da área externa do plug-in (começa com um carácter %)

    Objectos suportados

    Área de Plug-in


    Grupo Rádio

    Enables radio buttons to be used in coordinated sets: only one button at a time can be selected in the set.

    Gramática JSON

    NomeTipo de dadosValores possíveis
    radioGroupstringNome do grupo rádio

    Objectos suportados

    Botão de rádio


    Título

    Permite inserir uma etiqueta num objeto. O tipo de letra e o estilo desta etiqueta podem ser especificados.

    Pode forçar um retorno de carro na etiqueta utilizando o carácter \ (barra invertida).

    Para inserir um \ na etiqueta, introduzir "\".

    Por padrão, a etiqueta é colocada no centro do objeto. When the object also contains an icon, you can modify the relative location of these two elements using the Title/Picture Position property.

    Para la traducción de la aplicación, puede introducir una referencia XLIFF en el área del título de un botón (ver Apéndice B: arquitectura XLIFF).

    Gramática JSON

    NomeTipo de dadosValores possíveis
    textstringqualquer texto

    Objectos suportados

    Botón - Casilla de selección - Encabezado List Box - Botón radio - ÁreaTexto


    Cálculo de variáveis

    Esta propiedad define el tipo de cálculo que se realizará en un área pie de columna.

    The calculation for footers can also be set using the LISTBOX SET FOOTER CALCULATION 4D command.

    Existem vários tipos de cálculos disponíveis. The following table shows which calculations can be used according to the type of data found in each column and indicates the type automatically affected by 4D to the footer variable (if it is not typed by the code):

    CálculoNumTextDateHoraBoolPicttipo var rodapé
    MínimoXXXXXIgual ao tipo de coluna
    MáximoXXXXXIgual ao tipo de coluna
    SomaXXXIgual ao tipo de coluna
    ContagemXXXXXXInteger
    MédiaXXReal
    Desvio padrão(*)XXReal
    Variância(*)XXReal
    Soma dos quadrados(*)XXReal
    Personalizado ("none")XXXXXXQualquer

    (*) Apenas para list boxes do tipo array.

    Sólo las variables declaradas o dinámicas pueden utilizarse para mostrar los cálculos de pie de página. No se soportan otros tipos de expresiones como Form.value.

    Note that the calculation does not take the shown/hidden state of list box rows into account. If you want to restrict a calculation to only visible rows, you must use a custom calculation.

    Null no se tienen en cuenta para ningún cálculo.

    If the column contains different types of values (collection-based column for example):

    • Average and Sum only take numerical elements into account (other element types are ignored).
    • Mínimo y Máximo devuelven un resultado según el orden habitual de las listas de tipos, tal como se define en la función collection.sort().

    Using automatic calculations in footers of columns based upon expressions has the following limitations:

    • es soportado con todos los tipos de list boxes cuando la expresión es "simple" (como [table]field o this.attribute),
    • se soporta pero no se recomienda por razones de rendimiento con list boxes colección/selección de entidades cuando la expresión es "compleja" (distinta de this.attribute) y el list box contiene un gran número de líneas,
    • no se soporta con list boxes selección actual/selección temporal cuando la expresión es "compleja". Precisa utilizar cálculos personalizados.

    Cuando está configurado Personalizado ("none" en JSON), 4D no realiza cálculos automáticos y debe asignar el valor de la variable en esta área por programación.

    Gramática JSON

    NomeTipo de dadosValores possíveis
    variableCalculationstring"none", "minimum", "maximum", "sum", "count", "average", "standardDeviation", "variance", "sumSquare"

    Objectos suportados

    Rodapé de Listbox