Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v19
Evénements formulaire 4D View Pro
|
Evénements 4D standard (voir Form event code) | Evénements 4D View Pro spécifiques |
Sur chargement | Sur VP prêt |
Sur gain focus | Sur clic |
Sur perte focus | Sur double clic |
Sur libération | Sur clic entête |
Sur après modification | |
Sur nouvelle sélection | |
Sur redimensionnement colonne | |
Sur redimensionnement ligne |
Tout code d'initialisation d'une zone 4D View Pro, pour le chargement ou la lecture de valeurs à partir de la zone ou dans la zone, doit être introduit dans l'événement formulaire Sur VP prêt de la zone. Cet événement formulaire est exécuté une fois que la zone est entièrement chargée. En testant l'événement, vous êtes sûr que le code sera exécuté dans un contexte valide. Une erreur est retournée si une commande 4D View Pro est appelée avant que l'événement Sur VP prêt soit généré.
Note : Les zones 4D View Pro sont chargées de façon asynchrone dans les formulaires 4D. Cela signifie que l'événement formulaire standard Sur chargement ne peut pas être utilisé pour le code d'initialisation de 4D View Pro, car il pourrait être exécuté avant que le chargement de la zone ne soit terminé. Sur VP prêt est toujours généré après Sur chargement.
Si vous cliquez n'importe où dans un document 4D View Pro, l'événement On Clicked est généré. L'objet retourné par la commande FORM Event contient :
Propriété | Type | Description |
code | entier long | On Clicked |
description | texte | "Sur clic" |
objectName | texte | nom de zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
range | objet | Plage de cellules |
Exemple :
If(FORM Event.code=On Clicked)
VP SET CELL STYLE(FORM Event.range;New object("backColor";"green"))
End if
Lorsqu'un utilisateur clique n'importe où dans un document 4D View Pro, l'événement On Double Clicked est généré. L'objet retourné par la commande FORM Event contient :
Propriété | Type | Description |
code | entier long | On Double Clicked |
description | texte | "Sur double clic" |
objectName | texte | nom de zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
range | objet | Plage de cellules |
Exemple:
If(FORM Event.code=On Double Clicked)
$value:=VP Get value(FORM Event.range)
End if
Lorsqu'un utilisateur clique sur un en-tête de colonne ou de ligne dans un document 4D View Pro, l'événement On Header Click est généré. L'objet retourné par la commande FORM Event contient :
Propriété | Type | Description |
code | entier long | On Header Click |
description | texte | "Sur clic entête" |
objectName | texte | nom de zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
range | objet | Plage de cellules |
sheetArea | entier long | L'emplacement de la feuille dans lequel s'est produit l'événement : |
Exemple:
If(FORM Event.code=Sur clic entête)
Case of
:(FORM Event.sheetArea=1)
$values:=VP Get values(FORM Event.range)
:(FORM Event.sheetArea=2)
VP SET CELL STYLE(FORM Event.range;New object("backColor";"gray"))
:(FORM Event.sheetArea=0)
VP SET CELL STYLE(FORM Event.range;New object("borderBottom";New object("color";"#800080";"style";vk line style thick)))
End case
End if
A la suite de toute modification apportée par l'utilisateur à un document 4D View Pro, l'événement On After Edit est généré. L'objet retourné par la commande FORM Event contient :
Propriété | Type | Description |
code | entier long | On After Edit |
description | texte | "Sur après modification" |
objectName | texte | nom de zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
action | texte | "editChange", "valueChanged", "DragDropBlock", "DragFillBlock", "formulaChanged", "clipboardPasted" |
Note : Voir également l'événement Sur VP Plage changée.
En fonction de la valeur de la propriété action, l'objet contiendra des propriétés supplémentaires.
La modification de texte génère les propriétés supplémentaires suivantes :
Propriété | Type | Description |
range | objet | Plage de cellules |
editingText | variant | Valeur depuis l'éditeur courant |
La modification de valeur(s) génère les propriétés supplémentaires suivantes :
Propriété | Type | Description |
range | objet | Plage de cellules |
oldValue | variant | Valeur de la cellule avant modification |
newValue | variant | Valeur de la cellule après modification |
Les actions de glisser-déposer génèrent l'intégration des propriétés supplémentaires suivantes :
Propriété | Type | Description |
fromRange | objet | Plage de la cellule source (glissée) |
toRange | objet | Plage de la cellule cible (déposée) |
copy | booléen | Indique si la plage source est copiée ou non |
insert | booléen | Indique si la plage source est insérée ou non |
Faire glisser le contenu pour remplir les cellules adjacentes génère les propriétés supplémentaires suivantes :
Propriété | Type | Description |
fillRange | objet | Plage utilisée pour le remplissage |
autoFillType | entier long | Valeur utilisée pour le remplissage. |
fillDirection | entier long | Direction du remplissage. |
La saisie de formule(s) génère les propriétés supplémentaires suivantes :
Propriété | Type | Description |
range | objet | Plage de cellules |
formula | texte | La formule saisie |
Coller du contenur à partir du presse-papiers génère les propriétés supplémentaires suivantes :
Propriété | Type | Description | |||||||||
range | objet | Plage de cellules recevant le contenu | |||||||||
pasteOption | entier long | Indique ce qui collé à partir du presse-papiers : | |||||||||
pasteData | objet | Les données du presse-papiers à coller | |||||||||
|
Voici un exemple de gestion d'événement On After Edit :
If(FORM Event.code=On After Edit)
If(FORM Event.action="valueChanged")
ALERT("ATTENTION : Vous êtes en train de modifier la valeur de "+String(FORM Evenement.oldValue)+" en "+Chaine(FORM Evenement.newValue)+"!")
End if
End if
L'exemple ci-dessus pourrait générer un objet événement (voir FORM Event) comme ceci :
{
"code":45;
"description":"On After Edit";
"objectName":"ViewProArea"
"sheetname":"Sheet1";
"action":"valueChanged";
"range": {area:ViewProArea,ranges:[{column:1,row:2,sheet:1}]};
"oldValue":"The quick brown fox";
"newValue":"jumped over the lazy dog";
}
La modification de la sélection courante de lignes ou de colonnes dans un document 4D View Pro génère l'événement On Selection Change. L'objet retourné par la commande FORM Event contient :
Propriété | Type | Description |
code | entier long | On Selection Change |
description | texte | "Sur nouvelle sélection" |
objectName | texte | Nom de la zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
oldSelections | objet | Plage de cellules avant modification. |
newSelections | objet | Plage de cellules après modification |
Exemple:
If(FORM Event.code=On Selection Change)
VP SET CELL STYLE(FORM Event.oldSelections;New object("backColor";Null))
VP SET CELL STYLE(FORM Event.newSelections;New object("backColor";"red"))
End if
La modification de la largeur d'une colonne dans un document 4D View Pro document par un utilisateur génère l'événement On Column Resize. L'objet retourné par la commande FORM Event comprend :
Propriété | Type | Description |
code | entier long | On Column Resize |
description | texte | "Sur redimensionnement colonne" |
objectName | texte | Nom de zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
range | objet | Plage des colonnes dont la largeur a été modifiée |
header | booléen | Vrai si la colonne de l'en-tête de la ligne (première colonne) est redimensionnée, sinon faux |
Exemple:
If(FORM Event.code=On Column Resize)
VP SET CELL STYLE(FORM Event.range;New object("hAlign";vk horizontal align right))
End if
La modification de la hauteur d'une ligne dans un document 4D View Pro document par un utilisateur génère l'événement On Row Resize. L'objet retourné par la commande FORM Event comprend :
Propriété | Type | Description |
code | entier long | On Row Resize |
description | texte | "Sur redimensionnement ligne" |
objectName | texte | Nom de zone 4D View Pro |
sheetName | texte | Nom de la feuille de l'événement |
range | objet | Plage des lignes dont la hauteur a été modifiée |
header | booléen | Vrai si la ligne de l'en-tête de la colonne (première ligne) est redimensionnée, sinon faux |
Exemple:
If(FORM Event.code=On Row Resize)
VP SET CELL STYLE(FORM Event.range;New object("vAlign";vk vertical align top))
End if
Lorsqu'un changement se produit dans une plage de cellules du document 4D View Pro, l'événement On VP Range Changed est généré. L'objet retourné par la commande FORM Event contient :
Propriété | Type | Description |
objectName | texte | Nom de zone 4D View Pro |
code | entier long | On VP Range Changed |
description | texte | "Sur VP Plage Changée" |
sheetName | texte | Nom de la feuille de l'événement |
range | objet | Plage de cellule de la modification |
changedCells | objet | Plage contenant uniquement les cellules modifiées. Il peut s'agir d'une plage combinée. |
action | texte | Le type d’opération générant l’événement :
|
Note : Voir également On After Edit.
Produit : 4D
Thème : Evénements formulaire 4D View Pro
4D View Pro ( 4D v19)