BindEvent() Customizé

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

BindEvent() Customizé

Message par Ollivier »

Bonjour à vous,

est-ce qu'il existe une fonction BindEvent() avec argument de donnée de type entier, pour permettre ça:

Code : Tout sélectionner

Procedure JeGereUnEvenement(*Obj.Objet)
...
C'est-à-dire permettre de porter un pointeur (ex: *Obj)

??
Avatar de l’utilisateur
falsam
Messages : 7324
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: BindEvent() Customizé

Message par falsam »

La réponse qui tue : Non
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: BindEvent() Customizé

Message par Ollivier »

J'ai trouvé une alternative (j'ai oublié d'informer que je cherchais une solution sans variable globale).

Il y a un couple d'instructions de transfert d'entier attribué à chaque fenêtre:

Code : Tout sélectionner

SetWindowData()
GetWindowData()
On associe le pointeur à une fenêtre avec

SetWindowData()

Puis, dans la/les procédure(s) de gestion, on récupère le pointeur comme suit:

Code : Tout sélectionner

Define Win.I = EventWindow()
Define *Obj.MyObject = GetWindowData(Win)
Avatar de l’utilisateur
microdevweb
Messages : 1802
Inscription : mer. 29/juin/2011 14:11
Localisation : Belgique

Re: BindEvent() Customizé

Message par microdevweb »

Personnellement je n'utilise plus que les binEvent et BinGadgetEvent, exemple dans une gestion de tables (créer dans un canvas) et stockées une map, j'affecte à la création l'id de la map / list avec SetGadgetData et dans ma gestion d'événement la récupère avec GetGadgetData(EventGadget()). Cela fonctionne très bien.
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Ollivier
Messages : 4197
Inscription : ven. 29/juin/2007 17:50
Localisation : Encore ?
Contact :

Re: BindEvent() Customizé

Message par Ollivier »

Tu utilises le couple :

Code : Tout sélectionner

SetGadgetData()
GetGadgetData()
avec EventGadget()

Ça marche aussi très bien effectivement.
Répondre