Kapitel 17 Komponenten
Wiederverwendbare Elemente erstellen
und einsetzen
Komponenten sind eine große Hilfe bei der Erstellung umfangreicher Anwendungen. Zum einen fördern sie die Wiederverwendbarkeit von Elementen, und zum anderen erlauben sie das Verschmelzen von grafischen Ressourcen mit Programmierung!
04_Fortgeschritten\Komponenten
Mit Komponenten können Sie Anwendungen erstellen, ohne dass Sie nur eine Zeile ActionScript schreiben müssen. Eine Komponente ist im Grunde genommen nichts anderes als ein »normaler« Movieclip, der als Behälter für fertigen Programmcode fungiert und mit grafischen Elementen kombiniert werden darf: Die Programmierung wird mit einem Movieclip-Symbol verbunden und kann so als Komponente beliebig oft Verwendung finden. Einfluss auf das Verhalten der Komponenten erlauben frei definierbare Komponenten-Parameter, die über einfache Bedienfelder während der Entwicklung festgelegt werden – die Programmierung der Komponenten ist aber weiterhin erlaubt.
Im Lieferumfang von Flash sind bereits seit Version 5 vorgefertigte Komponenten enthalten (in Flash 5 nannten sich diese noch Smart-Filmsequenzen bzw. auf Englisch »Smart Clips«). In Flash MX 2004 ist der Umfang der mitgelieferten Komponenten bereits so groß, dass hier auch von einem eigenen Rahmensystem (engl. Framework) für die Anwendungsentwicklung gesprochen werden darf. Dabei lassen sich natürlich die vorhandenen Komponenten anpassen oder eigene hinzufügen bzw. ganz neue entwickeln.
17.1 Vorgefertigte Komponenten
Je nachdem, mit welcher Flash-Version Sie arbeiten, und je nachdem, welchen Flash Player Sie als Zielplattform anvisieren, stehen bereits fertige Komponenten in Flash zur Verfügung. Weitere Komponenten gibt es sowohl kostenlos als auch kostenpflichtig im Web. Einige nützliche Adressen zum Bezug von fertigen Komponenten sind auf der nächsten Seite in der Tabelle »Bezugsquellen für Komponenten« zusammengefasst.
Hier klicken, um das Bild zu Vergrößern
Abbildung 17.1
Macromedia bietet im Bereich »Flash Exchange« zusätzliche Komponenten für Flash.
Die einfachste Möglichkeit zum Installieren von neuen Komponenten ist die Verwendung des Extension Managers (Version 1.6 oder höher), den Sie über Hilfe • Erweiterungen verwalten aufrufen. Dieser installiert und verwaltet Komponenten, sofern diese als komprimierte Komponenten-Dateien im MXP-Format vorliegen (Macromedia Extension Manager Package).
Komponenten, die nicht als Erweiterung vorliegen, fügen Sie Flash hinzu, indem Sie die Komponenten manuell in den Ordner Components innerhalb des Konfigurationsordners platzieren (siehe »Flash-Entwicklungsumgebung anpassen«, Seite 93).
17.1.1 Flash MX
Flash MX bietet Ihnen direkt nach der Installation sieben Standardkomponenten, die als UI Components bezeichnet werden. Diese Komponenten erlauben den schnellen Entwurf von Prototypen (Rapid Prototyping) und die baukastenartige Zusammensetzung von fertigen Anwendungen. Die Anpassung der Gestaltung ist natürlich ebenso möglich wie das Hinzufügen weiterer Komponenten.
Tabelle 17.2
Standardkomponenten in Flash MX (UI Components)
Komponente
|
Beschreibung
|
CheckBox
|
Kontrollkästchen erlauben es, eine oder mehrere Möglichkeiten auszuwählen. In Formularen kommen sie z. B. zum Einsatz, um das Lesen der AGBs zu bestätigen.
|
ComboBox
|
Diese Form der Auswahlmöglichkeit erlaubt es, ein Element aus einer Liste auszuwählen.
|
ListBox
|
Listen zeichnen sich dadurch aus, dass es mehrere Wahlmöglichkeiten zeitgleich gibt und dass der Betrachter Mehrfachauswahlen treffen darf.
|
PushButton
|
Erzeugt eine Standardschaltfläche.
|
RadioButton
|
Optionsfelder erlauben es, eine Möglichkeit auszuwählen.
|
ScrollBar
|
Laufleisten oder Rollbalken ermöglichen es, großflächige Inhalte wie z.B. lange Texte zu betrachten, indem der Inhalt horizontal oder vertikal bewegt wird.
|
ScrollPan
|
Verschiebbare Container gestatten es, externe Medien einzuladen (SWF und JPEG) oder die in der Bibliothek mit einer Verknüpfung versehenen Movieclips als Inhalt zu nutzen. Ist der Inhalt zu groß, darf der Betrachter diesen verschieben.
|
Zusammen-spiel
Leider funktioniert das Zusammenspiel der im Lieferumfang von Flash MX enthaltenen Komponenten nicht mehr fehlerfrei mit Flash MX 2004. Macromedia hat jedoch eine aktualisierte Version der Komponenten für Flash MX 2004 unter http://www.macromedia.com/cfusion/exchange/index.cfm?extid=1009423&view=sn111
zur Verfügung gestellt, die dann auch in das Flash Player 7-Format exportiert werden können!
Tabelle 17.3
Kompatibilität der Flash MX-Standardkomponenten (UI Components) mit Flash MX 2004
Exportformat
|
ActionScript-Version
|
Ergebnis
|
Flash Player 7
|
ActionScript 2.0
|
Komponenten funktionieren evtl. nicht wie erwartet.
|
Flash Player 7
|
ActionScript 1
|
Komponenten funktionieren evtl. nicht wie erwartet.
|
Flash Player 6
|
ActionScript 2.0
|
Komponenten funktionieren evtl. nicht wie erwartet.
|
Flash Player 6
|
ActionScript 1
|
ok
|
17.1.2 Flash MX 2004
Hier klicken, um das Bild zu Vergrößern
Abbildung 17.2
Im Vergleich: Die Standardversion von Flash MX 2004 bietet deutlich weniger Komponenten als die Professional-Variante.
Kategorien
Die mit Flash MX 2004 ausgelieferten Komponenten lassen sich in drei verschiedene Kategorien gliedern:
|
Benutzeroberflächen-Komponenten (UI Components) |
|
Medienkomponenten (Media Components) |
|
Datenkomponenten (Data Components) |
Vorsicht ist geboten: Die Standardversion von Flash MX 2004 enthält nicht alle Komponenten der Professional-Version (siehe die Abbildung 17.2)!
UI Components sind Steuerelemente für die Benutzeroberfläche, welche die Interaktion in einer Anwendung ermöglichen. Dazu gehören Komponenten für Menüs, Optionsschaltflächen und Fenster. Medienkomponenten dienen der Integration und Steuerung von Medien wie z.B. Videos. Die XMLConnector-Komponente und die WebServiceConnector-Komponente zählen zu den Datenkomponenten, die es erlauben, verschiedene Datenquellen zu laden und zu verarbeiten. Neben diesen Komponenten gibt es noch eine Vielzahl an Klassen, die ebenfalls zu den Komponenten gehören und von ihnen genutzt werden. Dabei handelt es sich unter anderem um Manager-Klassen, welche die Tiefe (DepthManager) oder den Fokus (FocusManager) der Elemente in einer Anwendung verwalten.
Tabelle 17.4
Standardkomponenten in Flash MX 2004 (UI Components)
Komponente
|
Beschreibung
|
Bemerkung
|
Accordion
|
Eine Menge von überlappenden Ansichten, zwischen denen zur Navigation gewechselt werden kann. Beispielsweise verwenden Sie diese Komponente, um mehrteilige Formulare darzustellen, ohne dass der Anwender zwischen Seiten wechseln muss.
|
Nur Professional-Version
|
Alert
|
Ein Fenster, dass einen Hinweis (engl. Alert) darstellt und die Reaktion des Anwenders über Schaltflächen ermittelt. Beispielsweise kann so bei fehlerhaften Eingaben eine Meldung ausgegeben werden.
|
Nur Professional-Version
|
Button
|
Schaltflächen (engl. Buttons) erlauben es Anwendern, eine Aktion durchzuführen.
|
|
CheckBox
|
Kontrollkästchen erlauben es dem Anwender, boolesche Werte anzugeben. Kontrollkästchen kommen meist bei Formularen zum Einsatz, wenn z.B. das Lesen der AGBs bestätigt werden muss.
|
|
ComboBox
|
Das Kombinationsfeld erlaubt es, aus einer Liste ein Element auszuwählen.
|
|
DataGrid
|
Bei dem DataGrid handelt es sich um eine Datentabelle, die aus Spalten und Zeilen besteht und mit Werten gefüllt wird. Suchergebnisse oder Warenkörbe werden meist in Tabellen dargestellt.
|
Nur Professional-Version
|
DateChooser
|
Der Datumswähler unterstützt den Anwender bei der Angabe eines Datums durch die Anzeige eines Kalenders.
|
Nur Professional-Version
|
DateField
|
Das Datumsfeld nimmt Datumseingaben entgegen, Gleichzeitig erlaubt es das Anzeigen eines optionalen Kalenders.
|
Nur Professional-Version
|
Label
|
Ein Label hilft, die Elemente in einem Formular zu beschriften.
|
|
List
|
Listen enthalten zeilenweise angeordnete Informationen, aus denen eine oder mehrere Zeilen gewählt werden dürfen.
|
|
Loader
|
Die Loader-Komponente erlaubt es, das Laden externer Daten zu verwalten und den Ladestatus während des Ladens anzuzeigen.
|
|
Menu
|
Das Menü entspricht einem normalen Menü in einer Desktop-Anwendung.
|
Nur Professional-Version
|
MenuBar
|
Die horizontale Anordnung von Menüpunkten erlaubt diese Komponente. Kombiniert mit der Menu-Komponente können Sie eine horizontale Menüleiste erstellen, um unter deren Menüpunkten ausklappbare Menüs erscheinen zu lassen.
|
Nur Professional-Version
|
NumericStepper
|
Der NumericStepper erwartet die Angabe von nummerischen Werten. Zusätzlich stehen Schaltflächen für die schrittweise Erhöhung oder Verringerung eines Wertes bereit.
|
|
ProgressBar
|
Der Fortschrittsbalken erlaubt es, fortschreitende Prozesse zu visualisieren (meist den Ladefortschritt).
|
|
RadioButton
|
Optionsfelder erlauben es, eine unter vielen Optionen zu wählen.
|
|
ScrollPane
|
Verschiebbare Container gestatten es, externe Medien einzuladen (SWF und JPEG) oder die in der Bibliothek mit einer Verknüpfung versehenen Movieclips als Inhalt zu nutzen. Ist der Inhalt zu groß, darf der Betrachter diesen verschieben.
|
|
TextArea
|
Mit dieser Komponente legen Sie Textbereiche an, die zur mehrzeiligen Anzeige, Bearbeitung oder Eingabe von Texten dienen.
|
|
TextInput
|
Die Texteingabe-Komponente bietet sich für die Anzeige, Eingabe oder Bearbeitung von einzeiligen Texten in Formularen an.
|
|
Tree
|
Mit Hilfe eines Baums (engl. Tree) lassen sich Daten in einer hierarchischen Struktur ähnlich einem Dateiexplorer darstellen.
|
Nur Professional-Version
|
UIScrollBar
|
Laufleisten oder Rollbalken ermöglichen es, großflächige Inhalte wie z.B. lange Texte zu betrachten, indem der Inhalt horizontal oder vertikal bewegt wird.
|
Neu in Flash MX 2004 Version 7.2
|
Window
|
Fenster sind eine beliebte Komponente, um Fenster innerhalb einer Flash-Anwendung mit Zusatzinformationen, Eingabeaufforderungen und Warnungen einzublenden. Ein Beispiel dafür ist ein Login-Fenster für die Anmeldung in einem privaten Bereich, in dem der Benutzer seinen Namen und ein Passwort angeben muss.
|
|
Tabelle 17.5
Standardkomponenten in Flash MX 2004 (Media Components)
Komponente
|
Beschreibung
|
Bemerkung
|
MediaController
|
Bedienelemente zur Steuerung von gestreamten Medien wie Video und Ton. Sie dient der Steuerung der Wiedergabe in einer MediaDisplay- oder MediaPlayback-Komponente.
|
Nur Professional-Version
|
MediaDisplay
|
Zeigt gestreamte Medien wie Video und Ton in einer Anwendung an. Zur Steuerung des Abspielvorgangs bietet sich die MediaController-Komponente an.
|
Nur Professional-Version
|
MediaPlayback
|
Die MediaPlayback-Komponente ist eine Kombination der MediaDisplay- und der MediaController-Komponente. Sie liefert Methoden zum Streamen von Medieninhalten.
|
Nur Professional-Version
|
Tabelle 17.6
Standardkomponenten in Flash MX 2004 (Data Components)
Komponente
|
Beschreibung
|
Bemerkung
|
DataHolder
|
Diese Komponente dient zum Vorhalten von Daten und zur Verbindung zwischen anderen Komponenten mit Hilfe von Datenbindungen.
|
Nur Professional-Version
|
DataSet
|
Die DataSet-Komponente wird in einer Anwendung mit anderen Komponenten kombiniert, um eine Datenquelle zu aktualisieren.
|
Nur Professional-Version
|
RDBMSResolver
|
Die RDBMSResolver-Komponente wird in einer Anwendung gemeinsam mit der DataSet-Komponente verwendet, wenn von der Flash-Anwendung ein Aktualisierungspaket (delta) zurück an eine relationale Datenquelle gesendet werden muss.
|
Nur Professional-Version
|
WebServiceConnector
|
Über den WebServiceConnector verbinden Sie eine Anwendung mit einem Webservice. Die Eigenschaften des Webservices können Sie über Bindungen mit anderen Komponenten kombinieren.
|
Nur Professional-Version
|
Die mit der Standardversion von Flash MX 2004 ausgelieferten Komponenten lassen sich alle auch im Flash Player 6-Format nutzen, sofern beim Veröffentlichen ActionScript 2.0 aktiviert ist. Nur die in der Professional-Version enthaltenen Media Components und die Data Components arbeiten erst ab dem Flash Player 7 korrekt.
Tabelle 17.7
Kompatibilität der Flash MX 2004-Standardkomponenten
(UI Components) mit Flash Player 6 und 7
Exportformat
|
ActionScript-Version
|
Ergebnis
|
Flash Player 7
|
ActionScript 2.0
|
ok
|
Flash Player 7
|
ActionScript 1
|
Komponenten funktionieren nicht.
|
Flash Player 6
|
ActionScript 2.0
|
Media Components und Data Components funktionieren nicht.
|
Flash Player 6
|
ActionScript 1
|
Komponenten funktionieren nicht.
|
Die Komponenten der Version 2 können nur bei aktiviertem ActionScript 2.0 funktionstüchtig exportiert werden.
|