| 4D v20.1OBJECT SET EVENTS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v20.1
 OBJECT SET EVENTS 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| OBJECT SET EVENTS ( {* ;} objeto ; arrEventos ; modo ) | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| * | Operador |   | Se for especificado, objeto é um nome de objeto (cadeia) Se for omitido, objeto é um campo ou uma variável | |||||
| objeto | Objeto de formulário |   | Nome de objeto ou "" para designar o formulário (se * for especificado) ou Campo ou variável (se * for omitido) | |||||
| arrEventos | Array inteiro longo |   | Array de eventos a definir | |||||
| modo | Inteiro longo |   | Modo de ativação dos eventos definidos em arrEventos | |||||
O comando OBJECT SET EVENTS modifica, para o processo atual, a configuração dos eventos formulário do formulário, dos objetos designados pelos parâmetros objeto e * .
Se passar o parâmetro opcional * se 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 passa uma referência de campo ou variável em vez de uma cadeia (campo ou variável objeto unicamente).
Para definir a configuração de eventos para o formulário, passe o parâmetro opcional * e uma cadeia vazia "" em objeto, neste caso, você designa o formulário atual.
Nota: Se deseja modificar os eventos de um sub formulário relacionado com uma tabela, só pode utilizar a sintaxe baseada no nome do objeto.
No parâmetro arrEventos, passe um array inteiro longo que contenha a lista de eventos de formulários pré definidos ou personalizados que deseja modificar (se pode utilizar o parâmetro modo para especificar se a modificação consiste na ativação ou desativação dos eventos) . Para designar um evento pré definido a modificar, pode passar em cada elemento do array arrEventos, uma das seguintes constantes, que se encontram no tema "Form event":
É importante levar em conta que o evento On Load não está incluído nesta lista: este evento não pode ser definido porque já foi gerado durante a execução do comando.
Em arrEventos, também pode passar todo valor correspondente a um evento personalizado. Neste caso, recomendamos utilizar valores negativos (ver o comando CALL SUBFORM CONTAINER).
O parâmetro modo se utiliza para definir o tratamento global a realizar para os elementos do array. Para isso, pode passar uma das seguintes constantes, que se encontra no tema "Propriedades dos objetos ":
| Constante | Tipo | Valor | Comentário | 
| Disable events others unchanged | Inteiro longo | 2 | Todos os eventos listados no array arrEvents se desativam; o estado de todos os outros eventos não muda | 
| Enable events disable others | Inteiro longo | 0 | Todos os eventos listados no array arrEvents se ativam; todos os outros eventos se desativam | 
| Enable events others unchanged | Inteiro longo | 1 | Todos os eventos listados no array arrEvents se ativam; o estado de todos os outros eventos não muda | 
O comando OBJECT SET EVENTS pode dar lugar a ativação de eventos que não são compatíveis com o objeto (dependendo do tipo). Neste caso, simplesmente se ignoram os eventos.
Se um objeto é duplicado depois de uma chamada ao comando OBJECT SET EVENTS, a configuração resultante de ativação/desativação também é duplicada.
Ativação de três eventos formulario para um conjunto de objetos list box e desativação de outros eventos:
 ARRAY LONGINT($MyEventsOnLB;3)
 $MyEventsOnLB {1}:=On After Sort
 $MyEventsOnLB {2}:=On Column Moved
 $MyEventsOnLB {3}:=On Column Resize
 OBJECT SET EVENTS(*;"MyLB@";$MyEventsOnLB;Enable events disable others)
  // Ativa 3 eventos e desativa todos os outrosDesativação de três eventos formulário para um conjunto de objetos list box, sem modificar os outros eventos:
 ARRAY LONGINT($MyEventsOnLB;3)
 $MyEventsOnLB {1}:=On After Sort
 $MyEventsOnLB {2}:=On Column Moved
 $MyEventsOnLB {3}:=On Column Resize
 OBJECT SET EVENTS(*;"MyLB@";$MyEventsOnLB;Disable events others unchanged)
  // Desativa só 3 eventosAtivação de um evento formulário para um objeto, sem modificar os outros eventos:
 ARRAY LONGINT($MyEventsOnLB;1)
 $MyEventsOnLB {1}:=On Column Moved
 OBJECT SET EVENTS(*;"Col1";$MyEventsOnLB;Enable events others unchanged)
  // Ativa unicamente o eventoDesativação de todos os eventos do formulário:
 ARRAY LONGINT($MyFormEvents;0)
 OBJECT SET EVENTS(*;"";$MyFormEvents;Enable events disable others)
  // Desativa todos os eventosDesativação de um só evento do formulário sem modificar os outros:
 ARRAY LONGINT($MyFormEvents;1)
 $MyFormEvents{1}:=On Timer
 OBJECT SET EVENTS(*;"";$MyFormEvents;Disable events others unchanged)
  // Só desativa o evento
	Produto: 4D
	Tema: Objetos (Formulários)
	Número 
        1239
        
        
        
	
	Criado por: 4D v14
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de linguagem 4D ( 4D v20)
	
	
	Manual de linguagem 4D ( 4D v20.1)
	
	
	
 Adicionar um comentário
Adicionar um comentário