Vous avez souscrit avec succès au site de Roger Champagne
Génial! Ensuite, complétez la commande pour un accès complet au site de Roger Champagne
Bon retour! Vous vous êtes connecté avec succès.
Succès! Votre compte est complètement activé, vous avez maintenant accès à tout le contenu.
Bravo! Vos informations de facturation ont été mises à jour.
La mise à jour des informations de facturation a échoué.

Comment détecter les changements d'un champs d'une fenêtre

Utilisation d'une classe Xojo pour détecter les changements d'un contrôle.

Roger Champagne
Roger Champagne

Les fenêtres d'une application Windows sont peuplées de contrôles qui permettent notamment la saisi dans des zones de texte, ou encore la sélection d'une ou plusieurs options à partir de cases à cocher, de listes d'options ou de boutons radio.

Lorsque le texte d'une zone de texte change ou qu'une option d'un contrôle de sélection est modifiée, le gestionnaire d'événements est appelé.

On peut alors insérer une méthode à appeler lorsque que le gestionnaire d'évènements est invoqué par un changement à un contrôle. Par exemple, une telle méthode pourrait faire la mise à jour d'un enregistrement avec les nouvelles valeurs saisies.

La définition d'une classe s'avère utile dans ce cas. Regardons la classe définie ici-bas:

Classe zTextField

La classe zTextField est construite à partir de la classe TextField de Xojo. On y définit TextChange comme événement délégué à la nouvelle classe. Puis, on définit la méthode qui est invoqué par le déclenchement de l'événement TextChange.

//  TextChange Event Handler
maFenetre.mUpdate = True
TextChange

La méthode ci-haute assigne la valeur True à une variable booléenne locale mUpdate. Ainsi, si toutes les zones de texte et les contrôles de sélection d'une fenêtre sont initiés par un constructeur tel que  zTextField, on peut alors détecter les changements sur tous les champs de saisie d'une fenêtre et en faire le traitement par la méthode suivante:

 If mUpdate Then
  // Méthode pour faire le traitement des changements
 EndIf

Xojo, comme tant d'autres langages de programmation orientée objet organise la conception d'un logiciel autour d'objets plutôt que de fonctions et de logique. Un objet peut être défini comme un champ de données ayant des attributs et un comportement uniques.

Xojo

Roger Champagne

Je vis au Québec et j'ai mené une carrière professionnelle dans le domaine de la logistique tierce partie (en anglais, 3PL). Je me plais également à explorer les technologies d’information.