2012-08-10 2 views
0

lecture sur ComboBox composante → LinkComboBox (evt.target) - Qu'est-ce que cela signifie?

Le dernier exemple de code a cette ligne request.url = ComboBox(evt.target).selectedItem.data;

Qu'est-ce que cela signifie ComboBox(evt.target)? Type de casting? Pourquoi voudriez-vous dactylographier?

Pour des raisons de curiosité, j'ai également remplacé la dernière ligne changeHandler() par: ComboBox(evt.target).selectedIndex = -1;. Ça marche. Cela rend-il la fonction de gestionnaire plus flexible, puisque je ne référence pas l'instance aCb?

Répondre

0

vous déclenchez le déclenchement de l'événement en tant que ComboBox. Vous faites cela pour dire explicitement que cette variable est de ce type. Vous ne devez pas la plupart du temps, mais quand vous obtenez ces avantages

  1. -vous quand vous vérifiez ce que le type est
  2. Vous obtenez toutes les méthodes de la classe de type (Dans ce cas Combo Box) comme des options de saisie semi-automatique dans votre IDE
  3. jetteront une erreur si evt.target n'est pas de type ComboBox après tout
  4. est également un indicateur visuel de quelle variable il est. Très utile lors de la révision du code
+0

Je viens de tester l'exemple de code sans lancer le déclencheur de l'événement sur ComboBox. Ça marche. Pourquoi utiliseriez-vous même le moulage dans ce cas alors? – Gentoo

+0

a mis à jour ma réponse – locrizak