Frage

Sagen Sie, ich habe 4 Knöpfe und ich möchte, dass jeder eine andere Sache macht. Ich möchte keine große Switch -Anweisung, bei der ich eine andere Sache mache, basierend darauf, auf welcher Taste gedrückt wurde, und ich möchte auch nicht eine separate Methode für jeden Schaltfläche Klicken. Ist das Befehlsmuster eine gute Möglichkeit, dies zu lösen?

War es hilfreich?

Lösung

Ja, das ist eine übliche Verwendung für das Befehlsmuster. Stellen Sie sich vor, Sie haben eine Reihe von Klassen (z. B. offen, speichern, drucken). Jede von einer ausführenden () -Methode () können Sie eine Instanz einer dieser Klassen mit Ihren Schaltflächen in Verbindung bringen, und das Onclick -Ereignis der Schaltfläche kann Execute aufrufen (Execute ) ohne die Besonderheiten des zugehörigen Befehls zu wissen.

Das Wikipedia -Artikel gibt einige andere gemeinsame Verwendungen des Befehlsmusters.

Andere Tipps

Ja. Ich habe dazu beigetragen, die gleiche Aktion mit einem Menüklick und einer Symbolleiste zu binden. Es funktioniert ziemlich gut. Es revolutioniert keineswegs etwas, bietet Ihnen aber einen viel saubereren Code und wird böse Switch -Anweisungen beseitigt.

Ich habe irgendwo Code, den ich versuchen werde zu graben, um Ihnen einige Beispiele zu geben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top