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.

11.3 Ereignisse für Fenster-Bausteine 231<br />

Dieses Ereignis wird ausgelöst, sofern ein Mausklick mit der rechten Maustaste<br />

erfolgt.<br />

ˆ “#getContents”:<br />

Dieses Ereignis tritt dann ein, wenn ein View eröffnet und am Bildschirm<br />

als Fenster angezeigt oder die Message “update” an einen Fenster-Baustein<br />

gesandt wird.<br />

Grundsätzlich läßt sich eine unmittelbare Kommunikation zwischen einzelnen Fenster-Bausteinen<br />

durch den Einsatz der Basis-Methode “update” ermöglichen.<br />

ˆ “update”:<br />

Dem Empfänger-Objekt der Message “update” wird das Ereignis “#getContents”<br />

in der Form “self event: #getContents” zugestellt.<br />

Soll sich z.B. der Inhalt eines Textfeldes durch das Klicken auf ein Optionsfeld<br />

ändern, so wird bei der Ausführung der Methode, die mit dem Klicken auf das Optionsfeld<br />

durch die Message “when:perform:” verbunden ist, automatisch die Message<br />

“update” an das Textfeld geschickt.<br />

Für dieses Textfeld müssen wir durch die Message “when:perfom:” eine Verbindung<br />

zwischen dem Ereignis “#getContents” und einer Methode hergestellt haben, durch<br />

deren Ausführung in geeigneter Weise auf einen Mausklick auf das Optionsfeld reagiert<br />

wird.<br />

Neben den generell zur Verfügung stehenden Ereignissen gibt es weitere Ereignisse,<br />

die nur in Verbindung mit bestimmten Fenster-Bausteinen ausgelöst werden können.<br />

Hierzu zählen:<br />

ˆ “#clicked” für Instanzen der Basis-Klasse “Button”:<br />

Das Ereignis “#clicked” tritt dann ein, wenn ein Mausklick auf ein Schaltfeld<br />

erfolgt.<br />

ˆ “#textChanged” für Instanzen der Basis-Klassen “EntryField” und “Text-<br />

Edit”:<br />

Das Ereignis “#textChanged” wird ausgelöst, wenn der Inhalt eines Eingabefeldes<br />

bzw. eines Editierfeldes durch eine Tastatureingabe geändert und<br />

danach ein anderer Fenster-Baustein oder ein anderes Fenster aktiviert wird.<br />

Hinweis: Dieses Ereignis tritt auch dann ein, wenn das Fenster über das System-<br />

Schaltfeld “Schließen” geschlossen wird.<br />

Da intern registriert wird, ob der Inhalt des Eingabe- bzw. des Editierfelds geändert<br />

wurde, tritt das Ereignis “#textChanged” nur dann ein, wenn der Inhalt des Feldes<br />

durch eine Tastatureingabe auch tatsächlich verändert wurde. Somit wird dieses<br />

Ereignis z.B. dann nicht ausgelöst, wenn der ursprüngliche Inhalt identisch überschrieben<br />

wird.<br />

ˆ “#select” und “#doubleClickSelect” für Instanzen der Basis-Klassen “List-<br />

Box” und “ComboBox”:<br />

Die Ereignisse “#select” bzw. “#doubleClickSelect” werden ausgelöst, wenn<br />

ein Mausklick bzw. ein Doppelklick auf ein Listen- oder Kombinationsfeld<br />

erfolgt.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!