Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 10-04-2009 08:02:21

cyraile  
Membre Geek
Date d'inscription: 19-09-2008
Messages: 31
Pépites: 191
Banque: 0

Créer un évènement sur la sortie d'un champ

Bonjour

Dans une datawindow j'ai X champs, je voudrai lancer une fonction quand je sors d'un de ces champs ?

Comment est ce que je fait ?

Cordialement,
merci.

Hors ligne

 

#2 10-04-2009 08:13:48

mattdamon  
Le Tuniso-Parisien
Lieu: Livry-Gargan 93190
Date d'inscription: 29-12-2007
Messages: 569
Pépites: 89
Banque: 77,512,666,613,392,940

Re: Créer un évènement sur la sortie d'un champ

Bonjour,

Tu peux utiliser l'evenement ItemFocusChanged de la datawindow.

Hors ligne

 

#3 10-04-2009 08:23:10

nico  
Modérateur
Award: bf
Lieu: Plélan le grand
Date d'inscription: 08-02-2007
Messages: 273
Pépites: 13
Banque: 9,223,372,036,854,776,000

Re: Créer un évènement sur la sortie d'un champ

Bonjour,

En règle général, je gère la navigation dans mes fenêtres de saisie. L'utilisateur n'a pas le choix, lorsqu'il a saisie dans le champs 1, la touche "Entrer" ou "Tab" valide la saisie et le curseur va automatiquement dans le champs 2 (je bloc les autres champs tabsequence = 0).
Puis je fais mes vérifications dans l'itemfocuschanged de ma DW en vérifiant dans quel champs se trouve mon focus (quand le focus est dans le champs2, je vérifie le champs1 ou je lance la fonction dans ton cas)

J'espère que ça pourra t'aider.

Hors ligne

 

#4 14-04-2009 14:08:19

rincevent  
Modérateur
Award: bf
Lieu: Belgique
Date d'inscription: 06-02-2007
Messages: 722
Pépites: 100,002,023
Banque: 0

Re: Créer un évènement sur la sortie d'un champ

nico a écrit:

Bonjour,

En règle général, je gère la navigation dans mes fenêtres de saisie. L'utilisateur n'a pas le choix, lorsqu'il a saisie dans le champs 1, la touche "Entrer" ou "Tab" valide la saisie

L'appli que je maintiens fonctionne EXACTEMENT comme tu le décris, c-à-d que si tu sors d'un champ en utilisant la souris par exemple, et bien le champ n'est PAS VALIDé du tout...

d'où l'intérêt d'utiliser ce qui est bien prévu pour à la base (itemchanged/itemfocuschanged) au lieu de refaire tout à sa sauce...

Autant dire que je passe mon temps à combler d'énormes trous...


http://img114.imageshack.us/img114/8519/userbar175801nb.gif
Pourquoi ne puis-je vivre comme n'importe quel être humain ? Pourquoi mon destin est-il de ne pouvoir cesser de me battre ?

Hors ligne

 

#5 15-04-2009 13:01:39

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: Créer un évènement sur la sortie d'un champ

Petit rappel : les évènement ItemChanged() et ItemFocuschanged() sont déclenchés lors du passage d'un champ de la DW à un autre (chacun recevant en paramètre l'objet dwo d'arrivée du focus). Lorsque le focus quitte la DW (l'utilisateur qui clique sur un bouton de la fenêtre par exemple), ces évènements ne sont pas déclenchés (logique puisque le dwo actif reste le dernier sur lequel le focus était)... Pour forcer le déclenchement de l'ItemChanged() et ainsi valider la dernière saisie de l'utilisateur, il suffit de coder un AcceptText() dans l'évènement LoseFocus() de la DW... (attention pas d'accepttext() dans l'évènement itemchanged() !)


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22