Graphische Benutzungsoberflächen mit Java. Einführung in NetBeans

Ähnliche Dokumente
Arbeitsblatt 5 EAD II NetBeans

EAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ

Praktikum 4: Grafiken und Ereignisse

Heute. Grafische Benutzeroberflächen (Anonyme) innere Klassen Einfache Simulationen main / ausführbare jar-files IT I - VO 11 1

Objektorientierte Programmierung Studiengang Medieninformatik

Institut für Programmierung und Reaktive Systeme. GUIs mit Swing. Markus Reschke

Einstieg in die Informatik mit Java

Praktikum 1: Einführung, BMI Rechner

Zahlenraten: Ein Spiel in Java.

Einführung in die Programmierung für Nebenfach Medieninformatik. Beat Rossmy, Michael Kirsch

Einführung in die Programmierung für Nebenfach Medieninformatik. Beat Rossmy, Michael Kirsch

Silke Trißl Wissensmanagement in der Bioinformatik. Objektorientierte Programmierung (OOP) Vorstellung wie in der realen Welt: Farbe Hubraum Tank...

Fragen zur OOP in Java

Methoden und Klassen. Silke Trißl Wissensmanagement in der Bioinformatik

Einführung in die OOP mit Java

Kapitel 8: Grafische Benutzerschnittstellen

Objektorientierte Programmierung

Ziele. Kapitel 8: Grafische Benutzerschnittstellen. AWT und Swing. Ziele (2)

Silke Trißl, Prof. Ulf Leser Wissensmanagement in der Bioinformatik. Jede Applikation braucht eine Klasse mit einer main-methode

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 7. Grafische Benutzeroberflächen 1

Probeklausur: Programmierung WS04/05

Ereignisse (Events) in Java

Probeklausur Informatik 2 Sommersemester 2013

JLabel. dient zur Textanzeige. können auch Bilder anzeigen: mylabel.seticon( new ImageIcon( C:/Pfad/zum/Bild.jpg )

Projekt objektorientiertes programmieren in Java SS08. Event-Handling. Nils Heinrich

/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();

Graphical User Interfaces

Objekte. Theorieteil. Inhaltsverzeichnis. Begriffe. Programmieren mit Java Modul 5. 1 Modulübersicht 3

Abend 4 Übung : Erweitern von Klassen durch Vererbung

Javakurs für Anfänger

Einstieg in die Informatik mit Java

Computeranwendung und Programmierung (CuP)

Programmiertechnik GUI Programmierung mit Java Swing

Einführung in die Programmierung für NF. Grafische Benutzeroberflächen

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing

Ziel dieses Kapitels: Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen (engl.: "graphical user interface", GUI) in Java

Javakurs für Fortgeschrittene

Programmieren II. Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15. Institut für Angewandte Informatik

Institut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke

Grundelemente objektorientierter Sprachen (1)

Ist eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt

Grundelemente objektorientierter Sprachen (1)

Javaprogrammierung mit NetBeans. Variablen, Datentypen, Methoden

Neben der Verwendung von Klassen ist Vererbung ein wichtiges Merkmal objektorientierter

Objekte und Klassen. INE2 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert, E.

Grundelemente objektorientierter Sprachen (1)

Objektorientierte Programmierung Studiengang Medieninformatik

Übungen zur Vorlesung Wissenschaftliches Rechnen I

Java-Programmierung mit NetBeans

Vorkurs Informatik WiSe 16/17

Repetitorium Informatik (Java)

Brückenkurs Programmieren

Implementieren von Klassen

Java Kurzreferenz Für Fortgeschrittene

Erstellen von speziellen Ereignissen in C#

Methoden und Wrapperklassen

Übungsblatt 1. Java Vorkurs (WS 2017)

Computeranwendung und Programmierung (CuP)

Kapitel 9: Klassen und höhere Datentypen. Klassen und höhere. Objekte, Felder, Methoden. Küchlin/Weber: Einführung in die Informatik

Gui & Widgets. GUI & Widgets, Events GUI? Als GUI (= Graphical User Interface ) bezeichnet man die

4. Objektorientierte Programmierung mit C++

1.2 Attribute und Methoden Aufbau einer Java-Klasse:

Test zu Grundlagen der Programmierung Leitung: Susanne Guth/Michael Hahsler. 31. Jänner 2003

Grundlagen der Programmierung in C Klassen

Einführung in die Programmierung für NF. Übung

Vorkurs Informatik WiSe 17/18

Programmieren II. Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15. Institut für Angewandte Informatik

Programmieren II. Events (Ereignisse) Heusch 16.6 (2. Bd) Ratz 15. Institut für Angewandte Informatik

2 Programmieren in Java I noch ohne Nachbearbeitung

Programmieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.

Einführung in die Programmierung 1

Tutorium Java. Softwaretechnologie: Java I. Marco Jürgens und Mihail Atanassov.

Programmieren in Java

Kapitel 1: Die ersten Schritte Thema: Programmieren Seite: 1

Durch die Möglichkeit, Ein- und Ausgaben auf der Konsole durchzuführen, kann man auch systematisch das Verhalten von Klassen analysieren.

EINI LW. Einführung in die Informatik für Naturwissenschaftler und Ingenieure Vorlesung 2 SWS WS 15/16

4. Objektorientierte Programmierung mit C++

Einführung in GUI-Programmierung. javax.swing

Einführung in die Programmierung für NF. Übung 08

Kapitel 7: Ereignis-basierte Kommunikation

Ereignisverwaltung und Layout-Typen

Kapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen

Kapitel 1: Die ersten Schritte 1

Ein erstes "Hello world!" Programm

Einführung: Grafische Benutzeroberflächen. Programmieren II. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester / 22

Rückgabewerte von Methoden

Oliver Brinkmann Java Swing-Applikationen & JApplets (mit NetBeans)

Wir wollen in einer Bank die Konten der Kunden modellieren (um sie dann entspr. zu verarbeiten

Handbuch für die Erweiterbarkeit

Der Ball kann angezeigt werden: anzeigen( ) {... } Der Ball kann z.b. seine Größe verändern: groesseaendern(int veraenderung) {... } usw.

Einstieg in die Informatik mit Java

Objective-C CheatSheet

GUI-Programmierung. Teil I. Unterlagen zum Modul OOP mit Java V by MOU2/BFH-TI. Berner Fachhochschule Technik und Informatik

Arrays. Einleitung. Deklarieren einer Array Variablen

Transkript:

Graphische Benutzungsoberflächen mit Java Einführung in NetBeans

Graphische Benutzungsoberflächen! Interaktion mit dem Programm! Datenein- und ausgabe! Rückmeldungen über Verarbeitung der Daten! Visualisierung von Daten! optisch ansprechende Gestaltung der Benutzungsschnittstelle

Graphische Benutzungsoberflächen in Java! Rückgriff auf Betriebssystem! umfangreiche Klassenbibliotheken verfügbar, AWT und Swing! Erzeugung von Oberflächen, indem Komponenten auf dem Bildschirm arrangiert werden

AWT- und Swing-Klassenhierarchie Quelle: RATZ, Grundkurs Programmieren in Java, HANSER Verlag 2010

Java-GUI-Basisklassen Quelle: Vorlesungsfolien EAD I, Thema 10, Folie 14

Basisklasse JFrame! JFrame ist Basisklasse für Fenster in Java (Swing-Komponente)! abgeleitet von Klasse Frame (AWT-Komponente)! darauf können Komponenten platziert werden! zur Reaktion auf Ereignisse

NetBeans! Projekt erstellen, das verschiedene Klassen enthalten kann! verschiedene Arten von Projekten: Java, Java Web, BlueJ (NetBeans 6.9, nicht mehr in NetBeans 7)! jedes Projekt braucht eine Main Class (Klasse, die eine main-routine enthält) die beim Starten des Projektes aufgerufen wird! für Projekte mit graphischer Oberfläche sollte das eine von JFrame abgeleitete Klasse sein

NetBeans erste Schritte! neues Projekt erstellen hier set main class deaktivieren!! im Projekt neue Klasse erstellen (new File Swing GUI Forms JFrame Form)! beim ersten Start des Projektes wird die main class ausgewählt! Wechsel zwischen Quelltextansicht und Designansicht bei Programmerstellung möglich (für GUI-Klassen)

NetBeans erste Schritte! Quelltextansicht zeigt automatisch generierten Quelltext: Klassendeklaration, Konstruktor, main- Methode! weiterer generierter Quelltext ist versteckt und kann durch Klick auf + angezeigt werden! grau hinterlegter Quelltext kann nicht editiert werden, Bsp.: Hinzufügen eines Buttons mit der Maus fügt nicht editierbaren Quelltext hinzu

NetBeans erste Schritte! Komponenten hinzufügen in Designansicht aus der Palette! Konfiguration der Komponenten im Fenster Properties oder über rechten Mausklick auf die Komponente! Verknüpfung mit Ereignissen und Aktionen: Auswahl des Ereignisses der Komponente erzeugt automatisch ActionListener und Methodenrumpf, der dann um die gewünschten Befehle ergänzt werden muss

Ereignisverarbeitung! beteiligt: Quelle, Ereignis, Empfänger! Ereignisquelle: Komponenten der graphischen Oberfläche! Ereignis: Aktion, das durch Benutzer beim Arbeiten mit graphischer Oberfläche ausgelöst wird! Ereignisempfänger (event listener): Objekte, die auf Ereignisse lauschen und reagieren! Ereignisempfänger müssen bei der Ereignisquelle registriert werden Delegation Event Model (ermöglicht Trennung von Oberfläche und eigentlicher Ereignisverwaltung)

Ereignisverarbeitung! Erzeugen eines Oberflächen-Projektes, hinzufügen einer JFrame-Klasse! Hinzufügen eines Buttons! Quelltext enthält Konstruktor für Oberfläche, der Fenster erstellt und Button einbaut und eine main-methode, die ein Objekt der Oberflächenklasse erzeugt

Ereignisverarbeitung! Ereignisquelle: Button! Ereignisempfänger: muss erzeugt und beim Button registriert werden! auszuführendes Ereignis muss programmiert werden! in NetBeans: Rechtsklick auf Ereignisquelle, dann Event action actionperformed! im Quelltext: in initcomponents() wurde zum Button ein ActionListener() als anonyme Klasse hinzugefügt und ein Methodenrahmen zur Programmierung des Ereignisses wurde erstellt

Ereignisverarbeitung Generierter Quelltext für Button mit Namen Farbwechselknopf mit eingefügtem Befehl zum Ändern der Hintergrundfarbe: private void FarbwechselknopfActionPerformed(java.awt.event.ActionEvent evt) { } // TODO add your handling code here: float zufall1 = (float) Math.random(); float zufall2 = (float) Math.random(); float zufall3 = (float) Math.random(); Color farbe = new Color (zufall1, zufall2, zufall3); setbackground(farbe);

Datentypen! logischer Typ: boolean! Ganzzahltypen: int, byte, short, und long! Gleitpunkttypen: float und double! Zeichentyp: char! Zeichenketten sind in Java Objekte und keine Felder von char, sie sind nicht nullterminiert und besitzen auch kein spezielles Byte für die Länge

Deklaration Beispiele: private int x; private int y = 12; public double wert; private String name;

Java Grundlagen! Unterscheidung zwischen Groß- und Kleinschreibung! objektorientiert, Klasse erstellen und Methoden für die Klasse schreiben! Klassen können Instanzvariablen besitzen (Gültigkeit global für die Klasse, evtl. darüber hinaus)! Konstruktoren sind spezielle Methoden, die bei der Instanziierung von Objekten der Klasse aufgerufen werden, dort können Instanzvariablen initialisiert werden

Java Grundlagen! Fokus Algorithmierung: Klasse dient nur als Rahmen für die Methoden, Methoden enthalten die Algorithmen! Fokus Objektorientierung: mehrere Klassen entwerfen und Interaktion zwischen

NetBeans Features! automatisch generierter Quelltext! Autovervollständigung beim Tippen von Befehlen! Syntaxfehler werden sofort am Zeilenanfang durch rotes! gekennzeichnet Mausbewegung auf Symbol zeigt Fehlermeldung an! wenn verfügbar, werden beim Klick auf das Symbol Lösungsvorschläge angeboten, wie z.b. das hinzufügen der erforderlichen Pakete beim Verwenden spezieller Klassen

Quellen und weiterführende Informationen! Ratz, D.; Grundkurs Programmieren in Java, HANSER-Verlag! Kempe, Tepaße (Hrsg.); Softwareentwicklung mit Greenfoot und BlueJ, Schöningh-Verlag! Java Handbuch in deutsch http://www.dpunkt.de/java/index.html