03.11.2013 Aufrufe

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

SMALLTALK K1ex127-.45ex51275ahler/Bothner

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

228 11 Ereignis-gesteuerte und indirekte Kommunikation<br />

Hinweis: Neben dem Ereignis “#opened” tritt bei der Eröffnung eines Views auch das<br />

Ereignis “#menuBuilt” ein, so daß eine geeignet vereinbarte Methode “:” über<br />

die Zuordnung<br />

when: #menuBuilt perform: #:<br />

zur Ausführung gelangen kann (siehe Abschnitt 11.4).<br />

ˆ “event:”:<br />

Wurde die Message “when:perform:” bei der Vereinbarung eines Rahmenfensters<br />

in der Form<br />

when: # perform: #:<br />

eingesetzt, so wird der Eigentümer des Empfänger-Objektes, bei dem es sich<br />

um ein View handelt, durch die Ausführung der Message<br />

event: #<br />

benachrichtigt, auf das durch den Namen “” gekennzeichnete<br />

Ereignis durch die Ausführung der Methode “:” zu reagieren.<br />

Soll z.B. als geeignete Reaktion für den Ereignisnamen “#opened” festgelegt werden,<br />

daß die Methode “vereinbarungMenuLeiste:” ausgeführt werden soll, so muß<br />

die Message<br />

when: #opened perform: #vereinbarungMenuLeiste:<br />

wie folgt bei der Vereinbarung eines Views verwendet werden:<br />

WerteErfassung11 addView:<br />

( WerteErfassung11 topPaneClass new owner:WerteErfassung11;<br />

framingRatio: ( ......... );<br />

viewName: ’erfassungsfenster’;<br />

when: #opened perform: #vereinbarungMenuLeiste:;<br />

... ;<br />

addSubpane: ( ........... );<br />

... ;<br />

addSubpane: ( ........... );<br />

...<br />

)<br />

Wird dieses aus der Klasse “WerteErfassung” instanziierte View am Bildschirm als<br />

Fenster eröffnet, so tritt das Ereignis “#opened” ein, und es wird die Methode<br />

“vereinbarungMenuLeiste:” in der Klasse des Eigentümers des Views, d.h. in der<br />

Klasse “WerteErfassung”, gesucht und ausgeführt.<br />

Hinweis: Durch die Methode “vereinbarungMenuLeiste:” kann z.B. festgelegt werden,<br />

daß das Fenster mit einer bestimmten Menü-Leiste versehen wird (siehe Abschnitt 11.4).<br />

Neben dem Ereignisnamen “#opened” ist der Name “#close” als weiterer Ereignisname<br />

für ein Rahmenfenster vereinbart. Dieser Name korrespondiert mit einem<br />

Ereignis, das beim Schließen des Rahmenfensters ausgelöst wird, sofern dies über

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!