Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Jetzt lerne ich Java 6

Ein einfaches GUI Programm

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In unserem ersten Programmierbeispiel entwerfen wir ein grafisches Fenster in AWT.
06:49

Transkript

Nach dem Sie sich mit viel Mühe und Schweiß zuerst durch die Programmiersprachengrundlagen von Java und dann auch noch durch die Grundlagen des objektorientierten Konzeptes gewühlt haben, wollen Sie jetzt doch mit Sicherheit endlich mal eine richtige Applikation bauen. Richtig insoweit, dass viele damit verbinden, dass Sie eine grafische Oberfläche haben. Genauso, wie es auf Ihrem Windows, auf Ihrem Mac OS oder unter einer grafischen Oberfläche wie zum Beispiel KDE unter Linux möglich ist. Um grafische Oberflächen zu bauen, bietet Java schon recht lange eigene Klassen an. Diese finden sich hier in diesen Paketen unter dem Namen AWT. AWT steht für Abstract Window Toolkit. Und ist sehr sehr früh nach Java hineingekommen. Mit Hilfe von AWT war es damals schon möglich, entweder Desktop-Applikationen zu machen, wie Sie diese kennen, mit Menüs, Knöpfen, Textfeldern und so weiter, aber auch Applets. Das bedeutet kleine Java-Programme, die innerhalb des Browsers später laufen. Auch hier war es möglich, grafische Elemente abzubilden. Etwas später kam eine weitere grafische Bibliothekensammlung dazu. Mit dem Namen - Swing. Swing, der Name an sich, war eigentlich nur der Code-Name während der Entwicklung. Korrekt heißt Swing eigentlich "JFC" - von Java Foundation Classes. Aber alle Welt nennt diese Komponente einfach Swing. Erweitert das AWT um viele Komponenten. Zudem ist es an einigen Stellen auch moderner und implementiert viele Komponenten einfach anders. So kann man jetzt nicht grundsätzlich sagen, man nutzt AWT oder Swing, sondern Swing greift immer wieder auch auf gewisse Teile des AWTs zurück. Wir werden in unserer Lektion zuerst jetzt also im AWT Beginn und dort erstmal lernen, wie man mit grafischen Oberflächen arbeitet, und anschließend uns Swing zuwenden. Der Hauptunterschied zwischen beiden Systemen ist, dass das AWT mit seinen Komponenten auf das Fenster-System des darunterliegenden Betriebssystems zugreift. Das hat einen Fachbegriff und zwar wir nennen diese Komponenten Heavyweight-Komponenten, also sehr schwere Komponenten. Swing dagegen zeichnet alle Komponenten selbst, daher nennt man diese auch Lightweight-Komponenten. Der Vorteil an AWT ist dadurch, dass natürlich das Betriebssystem genutzt wird an dieser Stelle, dass die Komponenten noch genauso aussehen, wie auf dem Betriebssystem üblich. Der Nachteil ist natürlich, dass nur die Komponenten ins AWT hineingekommen sind, die eben auf allen Betriebssystemen vorhanden sind. Komplexere Komponenten sind dann erst in Swing zu finden. Da Swing alles zeichnet, kann da natürlich sehr viel erweitert werden. Zudem hat Swing auch noch den Vorteil, dass man das Look and Feel zur Laufzeit ändern kann. Das heißt, man kann einfach einstellen, wie die Komponenten aussehen sollen. Bei der Programmierung von Applets, also innerhalb des Browsers, wird dadurch, dass die Browser selber eine Java Runtime Environment mitbringen, und diese vielleicht nicht ganz aktuell ist, meistens doch auf AWT gesetzt. Begriffe, die ständig auftauchen werden innerhalb der Grafikprogrammierung, sind Begriffe wie Komponenten, Container, Layoutmanager und Canvas. Was ist denn darunter zu verstehen? Hierzu habe ich ein anderes Programm installiert und möchte Ihnen anhand dieses Programmes einfach mal zeigen, was Komponenten sind. Sie brauchen natürlich, um die Lektionen jetzt weiter zu arbeiten, nicht diese Entwicklungsumgebung, aber ich fand das ganz schön, hier einfach zu zeigen. Ich habe mir hier in der Palette einmal die AWT-Komponenten vorgenommen. Hierfür brauche ich hier noch ein bisschen Raum. Damit man hier auch diese zusätzliche Palette dann auch sieht. Weil es etwas eng. Aber so sollte es dann anschließend auch wirklich funktionieren. Das sind also die Komponenten, die uns das AWT zur Verfügung stellt. Also dieses Abstract Toolkit. Jedes gibt später ein schwebendes Fenster, wie Sie das bereits kennen. Ich kann das Ganze einfach mal ausfüllen lassen. Dann sieht man das auch etwas schöner. Hier haben wir also ein leeres Fenster. So was werden Sie also gleich auch erstellen. Schauen wir uns die Einzelkomponenten nun mal im Durchflug an, damit Sie sehen, was Komponenten sind. Auf diese gehen wir später noch einmal etwas genauer ein, wenn wir uns den Quelltext dazu anschauen. Hier diese erste Komponente ist, zum Beispiel, ein Label. Ein Label ist vom Prinzip her nichts anderes als eine Beschriftung, die Sie irgendwo innerhalb Ihres Fensters verwenden können. Die Komponenten sind so alle aufgebaut, dass es einzelne Klassen sind. Und diese Klassen haben logischerweise Eigenschaften und Methoden. Und eine Eigenschaft von so einem Beschriftungsfeld ist zum Beispiel die Eigenschaft "text". Und wenn ich Text dann zum Beispiel ändere in "Hallo lieber Kunde" - machen wir später natürlich aus dem Quelltext heraus - dann werden Sie an dieser Stelle entsprechend begrüßt. Sieht dann ausgeführt einfach so aus. Dann gibt es natürlich Komponenten, die Sie in jedem grafischen Betriebssystem finden, zum Beispiel: Buttons - das heißt Schaltflächen oder Knöpfe. Auch diese besitzen eine Beschriftung, haben natürlich den großen Vorteile, dass Aktionen auslösen können. Und hier ändern wir gerade mal zur Demonstration Beschriftung. Und Sie sehen, das sieht doch schon wirklich nach Applikation aus. Das sind also Komponenten. Das nächste, womit wir zu tun bekommen werden, sind sogenannte Container. Was sind denn Container? Das Fenster, was wir eben gesehen haben, ist an sich auch schon ein Container. Also ein Container hält andere Komponenten zusammen. Und werden dazu benutzt, zu kopieren und zu strukturieren. Die wichtigsten Container, die Sie kennenlernen werden, sind der Frame - und ein Fenster hier ist vom Prinzip her nichts anderes als eine Instanz von Frame. Dafür klappe ich das Ganze hier mal auf. Und zeig Ihnen grad mal mein Fenster. Wenn ich jetzt hier in den Quellcode gehe, sehen Sie - das ist nichts anderes als ein Frame. Und der zweite Container, den Sie kennenlernen werden, ist das sogenannte Perl. Das heißt, Sie können Bereiche innerhalb eines anderen Containers abgrenzen, um, zum Beispiel, Dinge zusammenzufassen. Dann gibt es noch sogenannte Layoutmanager. Layoutmanager sind dafür gut, dass wenn ich - hier mal ganz wild - einfach mal so paar Elemente generiere, die sind dafür zuständig, wie diese Elemente letztendlich im Fenster angeordnet werden. Layoutmanager gibt's also ganz verschieden. Das heißt, wenn ich hier zum Beispiel in schmal werde, dann bricht dieser Layoutmanager entsprechend so um, dass ich doch wirklich alle Elemente sehe. Das sind so genau, sogenanntes FlowLayout. Es gibt da weiter dann auch ganz verschiedene, die dafür zum Beispiel zuständig sind, dass ich einen GridLayout habe oder sogar ein NullLayout. Dann müssen Sie wirklich ganz frei die Positionen der Einzelelemente auf Ihrem Fenster positionieren. Dann gibt es noch die sogenannte Canvas. Das ist hier hinten, dieses Element. Klick ich mal grade hier rein. Und Canvas ist dafür zuständig, grafische Elemente aufzunehmen. Das heißt, auf 'ner Canvas können Sie zeichnen, können aber auch Bilder anzeigen lassen und Grafiken. Der letzte Begriff - und damit wollen wir auch diesen kurzen Rundumflug einfach beenden - ist der sogenannte EventListener. Wenn ich zum Beispiel auf so einen Knopf drücke, dann wird hier ein Ereignis ausgelöst. Dieses Ereignis soll dann zum Beispiel interne Tätigkeit kaum anstoßen. Und dafür brauchen wir dann eben einen EventListener, oder wenn man's auf Deutsch übersetzen würde, heißt das EreignisHörer. Also jemand hört auf ein Ereignis, um dann gewisse Dinge anzustoßen. Das war also der kurze Rundumflug, um AWT und Swing etwas kennenzulernen. Wir werden uns in der ersten Lektion jetzt mit dem AWT beschäftigen. Und Sie werden direkt als Nächstes Ihre erste grafische Applikation schreiben. Auf geht's!

Jetzt lerne ich Java 6

Steigen Sie ein in die Programmierung mit Java 6, lernen Sie die Grundlagen kennen und unternehmen Sie anschließend Ihre ersten Schritte in der objektorientierten Programmierung.

12 Std. 27 min (98 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!