| 

.NET C# Java Javascript Exception

1
In meinem Projekt befindet sich eine GUI. Nun habe ich für eine bestimmte Komponente ein Popup-Menü, dessen Items eigene Klassen sind (DeleteItem, MoveItem, …).
Nun möchte ich von diesen Items aus logischerweise in der GUI etwas löschen, verschieben, … .

Doch was ist „besserer Stil“ z.B. in der DeleteItem-Klasse aufzurufen?
  • ownerGUI.getRectangleList().getElement(number).delete();
  • meiner GUI die Methode deleteElementFromRectangleList(int number) zu geben (und aufzurufen)
22.04.2010
Griever 109 1 2
Griever 109 1 2
2 Antworten
1
Also der beste Weg wäre bei einem Klick auf das Item ein Event auszulösen.
Das kann dann von sonstwem abonniert und behandelt werden.
Du hast bestimmt dasselbe Popup für verschiedene Controls, richtig?
In diesem Fall müsstest Du dem Click-Event Argumente mitgeben, die das Item identifizieren, dass ursprünglich das Popup ausgelöst hat. In der Handler-Routine hast Du dann das Source-Item quasi direkt zur Verfügung und kannst entscheiden, was alles gemacht werden muss.
Eventuell bietet eben dieses Item schon selber eine Routine (z.B. für Delete).
Klingt kompliziert, ist aber der sauberste Weg, weil so Dein Popup komplett unabhängig vom restlichen Code läuft und z.B. auch Unit-Test möglich sind.

Oh...sehe grad JAVA ;)
Also kein Beispielcode, weil ich mich auf C# bezog...da würd ich das so machen...ist aber mit SIcherheit in JAVA ähnlich :)
22.04.2010
DaSpors 4,2k 2 8

Stelle deine Java-Frage jetzt!