Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13.

Ähnliche Präsentationen


Präsentation zum Thema: "Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13."—  Präsentation transkript:

1 Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13. Vorlesung WS 2004/2005

2 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/052 Übersicht Benutzeroberflächen –Fenster (JFrame), Buttons, Texteingabefenster –Arbeiten mit dem Visual Editor (VE)

3 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/053 Benutzeroberflächen: Bibliotheken Java-Klassenbibliotheken: AWT (Abstract Window Toolkit) –historisch erste Java-Klassenbibliothek für Oberflächen –Aussehen abhängig vom Betriebssystem –Paket java.awt.* Swing –Erweiterung des AWT –Aussehen unabhängig vom Betriebssystem –Paket javax.swing.* Weitere Pakete: –Java 2D /3D –Drag and Drop –....

4 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/054 Erzeugen eines Frame: Schritt 1

5 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/055 Erzeugen eines Frame: Schritt 2 Name der Klasse mit main

6 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/056 Erzeugen eines Frame: Ergebnis 1

7 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/057 Erzeugen eines Frame: Ergebnis 2

8 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/058 Erzeugen eines Frame: Schritt 3 In der main-Methode müssen zwei Befehle ergänzt werden: Erzeugen eines Objekts (Unterklasse von JFrame) mit new Aufruf von setVisible(true): zeigt JFrame

9 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/059 Ausführen des Frame

10 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0510 Frame

11 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0511 Exkurs: falls VisualClass bei Neu nicht da ist Menü: Fenster - Perspektive anpassen - Datei > neu aufklappen:

12 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0512 Exkurs: falls Java Beans Fenster nicht da ist Menü: Fenster - Sicht anzeigen -andere –Doppelklick auf Java - Java Beans

13 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0513 Anmerkung Programme bisher (ohne Frames): –Erzeugen einer Klasse mit Methode "main" –eigener Programmcode in "main" (oder in Methoden, die von "main" aus aufgerufen werden) mit Frames: –Definition einer Unterklasse von JFrame ("Fenster") –in "main" wird Objekt dieser Unterklasse erzeugt und Frame gestartet –eigener Programmcode in Methode, die auf Button- Klick/Menuewahl/sonst. Ereignis (z.B. Mausbewegung) reagiert

14 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0514 Fenster des Visual Editors Java Beans Fenster Eigenschaften (des im Java Beans Fenster aktivierten Elements) Design des Frame Erzeugter Programmcode

15 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0515 Ändern des Layouts

16 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0516 Einfügen eines Button 1. Klick: JButton 2. Klick: Positionierung

17 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0517 Einfügen eines Textfeldes 1. Klick: JTextField 2. Klick: Positionierung

18 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0518 Ergebnis: Textfeld + Button

19 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0519 Button-Text hinzufügen

20 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0520 Textfeld und Button: erzeugte Attribute Eclipse hat Referenzvariablen (Attribute von MeinFenster) für den Button (jButton) und das Textfeld (jTextField) erzeugt

21 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0521 Programmierung der Oberfläche I Eclipse (der Visual Editor) erzeugt zu jedem graphischen Element (Button, Textfeld, Menue,..) automatisch eine Referenzvariable diese Referenzvariablen gehören zu entsprechenden Klassen (JButton, JTextField) für diese Referenzvariable können Methoden dieser Klassen aufgerufen werden

22 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0522 Programmierung der Oberfläche II Einem graphischen Element (Button, Textfeld, Menue,..) sind Ereignisse/Events (Klick auf Button/Menuefeld, Mausbewegung auf Textfeld,...) zugeordnet Einem graphischen Element können Methoden zugeordnet werden, die bei einem bestimmten Ereignis automatisch aufgerufen werden. –z.B. Klick auf Button

23 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0523 Reaktion auf Button-Klick: Schritt 1 Rechtsklick auf Button

24 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0524 Reaktion auf Button-Klick: Schritt 2

25 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0525 Reaktion auf Button-Klick: Erzeugte Methode hier wird Code eingefügt, der bei Klick auf Button ausgeführt wird

26 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0526 Methoden für Textfelder (Klasse JTextField) Methoden der Klasse javax.swing.JTextField String getText(): liefert Text in Textfeld void setText(String): setzt Text in Textfeld weitere Methoden: Javadoc Beispiel: javax.swing.JTextField t;.................... String st = t.getText(); t.setText(st+st); //Dupliziert Text in Textfeld

27 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0527 Bsp: Duplizieren des Textes bei Klick auf Button

28 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0528 Umwandeln von String in Zahl typische Anwendung: mit Eingabe in Textfeld soll gerechnet werden. Methode: static int parseInt(String) der Klasse Integer Beispiel: javax.swing.JTextField tf;........ String s = tf.getText(); int i = Integer.parseInt(s); int j = 3*i + 8; Vorsicht: Wenn im String keine "Zahl" steht, stürzt das Programm ab (Lösung: Ausnahmebehandlung, Exceptions)

29 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0529 Weitere Methoden Methode der Klasse java.awt.Frame: void setSize(int, int ) –z.B. setSize(500,500); void setBackground(Color) –z.B. setBackground(java.awt.Color.magenta); Methoden der Klasse java.awt.Button: void setLabel(String) void setForeground(Color) void setBackground(Color) weitere Methoden: Javadoc

30 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0530 Übungsaufgabe Programmiert eine Anwendung mit einem Button. Bei Klick auf diesen Button soll der Text "Hallo" ausgegeben werden.

31 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0531 Übungsaufgabe Schreibt eine Anwendung mit einem Button und zwei Textfeldern, so dass beim Klicken des Buttons der Text des einen Textfeldes im anderen Textfeld in Grossbuchstaben erscheint: Hinweis: –die Methode toUpperCase() wandelt einen String in Grossbuchstaben um –Das Klicken auf einen Button löst den Event Events - Mouse - MouseClicked aus

32 Gröger, Dörschlag, Plümer - Einführung in Java - 1. Semester - WS 04/0532 Hausaufgabe Programmiert eine Anwendung, die eine Temperatur von Celsius nach Fahrenheit und umgekehrt umrechnet. Die Ausgangstemperatur soll interaktiv eingegeben werden. Die Richtung der Berechnung soll über eine Checkbox eingestellt werden. Die Anwendung soll also so oder so ähnlich aussehen: Hinweis: das Programm zur Temperaturumrechnung findet Ihr in Vorlesung 3 (Musterlösung zur Hausaufgabe) Label (wie "Celsius") erzeugt mal mit Eine Checkbox erzeugt man mit. Die Methode boolean getState() der Klasse Checkbox gibt an, ob ein Häkchen da ist (true) oder nicht (false).


Herunterladen ppt "Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13."

Ähnliche Präsentationen


Google-Anzeigen