4D View v14PV APPELER SUR EVENEMENT |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D View v14
PV APPELER SUR EVENEMENT
|
PV APPELER SUR EVENEMENT ( zone ; événement ; méthode ) | ||||||||
Paramètre | Type | Description | ||||||
zone | Entier long |
![]() |
Zone 4D View | |||||
événement | Entier long |
![]() |
Événement 4D View | |||||
méthode | Chaîne |
![]() |
Nom de la méthode | |||||
La commande PV APPELER SUR EVENEMENT est utilisée pour lier une méthode à un événement 4D View. Chaque fois que l’événement survient dans la zone 4D View, la méthode est exécutée.
Pour définir le paramètre événement, utilisez les constantes du thème PV Événements.
La méthode appelée reçoit 6 paramètres de type Entier long et retourne un Booléen dans $0 :
$1 : Référence de la zone 4D View
$2 : Événement
$3 : Code de touche de modification
$4 : Numéro de la colonne
$5 : Numéro de la ligne
$6 : Code ASCII de la touche (si l’événement est un clic, un clic droit ou un double-clic, $6 vaut 0)
Le paramètre $3 peut contenir une des valeurs suivantes (ces valeurs sont additionnées en cas de combinaison de touches) :
0 | Aucune |
512 | Touche Majuscule |
2048 | Touche Alt |
4096 | Touche Ctrl (Windows) / Commande (Mac OS) |
Constante | Type | Valeur |
pv tri croissant | Entier long | 2 |
pv tri décroissant | Entier long | 3 |
Si $0 vaut Vrai, l’événement n'est pas pris en compte.
Si $0 vaut Faux, l’événement est pris en compte.
Note : En vue d'une compilation de la base, il est nécessaire de déclarer les paramètres $0 en Booléen et $1 à $6 en Entier long, même si tous ne sont pas utilisés.
Si le paramètre zone est égal à 0, la commande PV APPELER SUR EVENEMENT s’applique à l’ensemble des nouvelles zones 4D View. Dans ce cas, il est préférable de placer cette commande dans la Méthode base Sur ouverture, exécutée à l’ouverture de la base.
Pour désinstaller la méthode d'appel sur événement, il suffit d'exécuter la commande PV APPELER SUR EVENEMENT avec une chaîne vide en troisième paramètre.
Reportez-vous aux exemples des commandes PV VALIDER CELLULE COURANTE, PV LIRE CELL ACTIVE PRECEDENT, PV LIRE CHAMP CELLULE, PV Lire methode sur evenement et PV ENREGISTRER DOCUMENT.
L’utilisateur a cliqué sur un en-tête de colonne pour effectuer un tri. La méthode MP_Evénement permet de savoir quelle est la colonne qui a été triée et dans quel ordre le tri a été effectué.
`Installation de la méthode qui sera appelée lors de l’événement pv sur tri colonne
PV APPELER SUR EVENEMENT(zone;pv sur tri colonne;"MP_Evénement")
`Code de la méthode MP_Evénement
C_BOOLEEN($0)
C_ENTIER LONG($1;$2;$3;$4;$5;$6)
C_ALPHA(12;$OrdreTri)
Si($2=pv sur tri colonne)
Au cas ou
:($6=pv tri croissant)
$OrdreTri:="croissant"
:($6=pv tri décroissant)
$OrdreTri:="décroissant"
Fin de cas
ALERTE("Le tri a été effectué sur la colonne "+Chaine($4)+" dans un ordre "+$OrdreTri)
Fin de si
Un double-clic sur un en-tête de colonne provoque le redimensionnement de la colonne. Cependant, un double-clic génère une séquence de deux événements : pv sur clic puis pv sur double clic.
Par conséquent, si le tri a été autorisé via la commande PV FIXER PROPRIETE ZONE, un double-clic sur un en-tête provoquera d’abord le tri de la colonne puis son redimensionnement. Si vous souhaitez qu’un double-clic provoque uniquement le redimensionnement de la colonne, vous devez intercepter et effacer l’événement pv sur clic. En effet, l’événement pv sur clic est généré juste avant que le tri soit effectué. Pour cela, il suffit d’installer une méthode qui sera appelée lors de l’événement pv sur clic :
`Installation de la méthode qui sera appelée lors de l’événement pv sur clic
PV APPELER SUR EVENEMENT(zone;pv sur clic;"MP_Evénement")
`Code de la méthode MP_Evénement
C_BOOLEEN($0)
C_ENTIER LONG($1;$2;$3;$4;$5;$6)
Si($2=pv sur clic)
$0:=Vrai `L’événement est ignoré, le tri n’est pas effectué
Fin de si
Produit : 4D View
Thème : PV Zone
Numéro :
15994
Nom intl. : PV ON EVENT
Modifié : 4D View 2004.1
4D View - Langage ( 4D View v11.4)
4D View - Langage ( 4D View v12)
4D View - Langage ( 4D v13)
4D View - Langage ( 4D View v14 R2)
4D View - Langage ( 4D View v14)
4D View - Langage ( 4D View v14 R3)
4D View - Langage ( 4D View v14 R4)