Question

Dire que j'ai 4 boutons et je veux chacun de faire quelque chose de différent. Je ne veux pas une déclaration de grand interrupteur où je fais une chose différente basée sur quel bouton a été poussé, et je ne veux une méthode distincte pour chaque clic de bouton. Est le modèle de commande une bonne façon de résoudre ce problème?

Était-ce utile?

La solution

Oui, c'est une utilisation courante pour le motif de commande. Imaginez que vous avez un ensemble de classes (par exemple Ouvrir, Enregistrer, Imprimer) dont chacune fournit une méthode execute (), vous pouvez associer une instance d'une de ces classes avec vos boutons et l'événement onclick du bouton peut appeler exécuter ( ) sans connaître les détails de ce que la commande associée fait.

Le article de Wikipédia donne d'autres utilisations courantes du modèle de commande.

Autres conseils

Oui. Je l'ai utilisé pour aider à égalité dans la même action à un clic de menu et une barre d'outils cliquez. Il fonctionne très bien. Il ne révolutionne rien par tout moyen, mais vous donne un code beaucoup plus propre et se débarrasse des états de commutation désagréables.

J'ai le code quelque part que je vais essayer de creuser pour vous donner quelques exemples.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top