Objektorientierte Benutzerschnittstellen ◦ Zusammenfassung ◦ ?

Ohne Kenntnisse der objektorientierte Programmierung ist es nicht mehr möglich, Software zu entwickeln. Dieses Thema führt am Beispiel von Benutzerschnittstellen in die Grundbegriffe Objekt, Ereignis und Ereignisprozeduren ein.

### Entwicklung einer objektorientierten Benutzerschnittstelle

Benutzerschnittstellen setzen sich aus Text- und Grafikobjekten zusammen und heissen deshalb Graphical User Interfaces (GUI). Ihre Entwicklung folgt drei Phasen:

> Objekte interaktiv entwerfen

> Der Entwickler zeichnet zum Beispiel ein Bildschirmformular, das Bezeichnungsfelder (schwarz), Textfelder (weiss) und die Schaltflächen Verbuchen und Abbrechen enthält:

> Objekten Ereignisse zuordnen

> Der Entwickler ordnet zum Beispiel der Schaltfläche Abbrechen das Ereignis Mausklick zu.

> Reaktionen auf Ereignisse programmieren

> Der Entwickler beantwortet zum Beispiel einen Mausklick auf Abbrechen mit der Subroutine Abbrechen_Klick()

### Ereignisorientierte Programmierung

Vor dem Siegeszug der Objektorientierung ging der Programmierer in drei Schritten vor:

- Er setzte ein Hauptprogramm aus wenigen Befehlen und Unterprogrammaufrufen zusammen

- Er entwickelte Unterprogramme

- Er unterbrach an wenigen Stellen den Programmablauf und forderte den Benutzer zur Eingabe auf.

Der Programmierer hatte so die volle Kontrolle über den Programmablauf, musste aber die Benutzerschnittstelle selbst programmieren. Diese war meist einfach, und die interaktionsfreiheit des Benutzers war beschränkt. Mehr Komfort brachten vorgefertigte GUI-Objekte. Man platziert zuerst Objekte wie Menüs, Schaltflächen und Dialogfenster auf dem Bildschirm und schreibt dann Code, der die Objekte mit den Benutzerreaktionen verbindet. Eine typische Enwicklerin geht wie folgt vor:

1. Sie erstellt ein Eingabe-/Ausgabefenster (Formular)

2. Sie platziert vordefinierte Steuerelemente wie Bezeichnungsfelder, Textfelder und Schaltfläche

3. Sie bestimmt die Eigenschaften des Formulars und der Steuerelemente, zum Beispiel Farben und Schrifttypen

4. Erst jetzt programmiert sie Reaktionen auf Ereignisse. Ein Ereignis ist meist eine Benutzeraktion wie ein Mausklick oder ein Tastendruck.

Ereignisse werden vom Benutzer oder vom Rechner ausgelöst. Zum Beispiel klickt der Benutzer auf eine Schaltfläche oder der Rechner löst ein Ereignis wie "Ablauf einer bestimmten Zeitdauer" aus. Der Entwicker reagiert zum Voraus auf ein Ereignis, indem er eine Ereignisprozedur schreibt. Zum Beispiel beantwortet er einen Klick auf die Schaltfläche Abbrechen mit der Subroutine Abbrechen_Click():

>     '--- Eingabeformular nach einem Klick auf die Schaltfläche Abbrechen entfernen
>     Private Sub Abbrechen_Click()
>       Unload Eingabeformular
>     End Sub

Sobald die Benutzerin auf die Schaltfläche Abbrechen klickt, entfernt die Ereignisprozedur das laufende Formular vom Bildschirm und löscht es aus dem Programmspeicher. Weil der Softwareentwickler mit einer Prozedur auf ein Ereignis (engl. event) antwortet, nennt man diese Art der Programmierung ereignisorientiert (engl. event-driven).

Das Thema GUI-Objekte in Excel führt in die Benutzerschnittstelle einer Arbeitsmappe ein und QuadratDialog() veranschaulicht dies an einer Arbeitsmappe, die ein Quadrat zeichnet.

Oft heisst eine Programmiersprache erst dann objektorientiert, wenn sie neben der Entwicklung objektorientierter Benutzerschnittstellen auch die folgenden Konzepte unterstützt: Kapselung und Abstraktion sowie Vererbung und Polymorphismus.

Formulare
Berichte
Ereignisse in Access