CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)"

Transkript

1 CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Graphische Benutzerschnittstellen I GUI erzeugen Seite 1

2 GUI GUI: Graphical User Interface Graphische Benutzeroberfläche Seite 2

3 Beispiel: ein leeres Fenster import javax.swing.jframe; public class SimpleGUIDemo { public static void main(string[] args) { JFrame frame = JFrame(); frame.setvisible(true); System.out.println( Main endet! ); main Erzeugt ein Fenster und macht es sichtbar. erzeugt GUI Erweitertes Konzept von Programm-Ausführung : Das Programm endet nicht mit dem Ende von main... und auch nicht mit dem Wegklicken des Fensters! GUI-Code endet geht weiter Seite 3

4 Beispiel: ein leeres Fenster Hier Fenster wegklicken! Programm endet damit nicht. Programm ist aktiv! Seite 4

5 Threads: GUI ist unabhängig von main aktiv import javax.swing.jframe; public class SimpleGUIDemo { public static void main(string[] args) { JFrame frame = Jframe(); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setvisible(true); System.out.println( Main endet! ); Wegklicken des Wegklicken des Fensters stoppt jetzt Fensters stoppt jetzt das Programm. das Programm. Das Programm besteht aus 2 Handlungssträngen (Threads): - main und alle Methoden die von main direkt oder indirekt aktiviert werden - die GUI Um das Gesamt-Programm zu beenden, muss main und die GUI enden. Seite 5

6 Mein-Thread und Event-Dispatcher Benutzeraktionen verarbeiten EventDispatchingThread import java.awt.container; import javax.swing.; import javax.swing.jframe; pub lic cla ss SimpleGUIDemo { p ubli c s tatic void main(string[] args) { JFrame frame = JFrame(); GUIObjekte Programmcode, beginnend mit main, abarbeiten Auf GUI-Objekte können zwei unabhängige Handelnde (Threads) zugreifen. Das kann zu Konfliktsituationen und Problemen führen. frame.setdefaultcloseoperation(jframe.exit_on_clos E); // Knopf (ein Widget) erzeugen JBu tton button = JBu tton("klickmich!"); // Container des Fensters holen Con tainer container = frame.getcontentpane(); main Thread // Knpof in Fenster setzen container.add(button); //Fenstergroesse bestimmen frame.setsize(400,500); // Breite Hoehe frame.setvisible(true); Programm: Objekte werden von 2 Threads (Aktivitäten) bearbeitet Seite 6

7 Threads Thread = (Handlungs-) Faden Handlungsfaden / Thread: zusammenhängende Folge von Aktionen ( Zuweisungen / Schleifen / Methodenaufrufe, etc. ) wobei eine Aktion die nächste bedingt / verursacht / beinflusst. public class Test { public static void main(string[] args) {... main-thread: bearbeitet main und alle von dort aufgerufenen Methoden Main-Thread: alle Programme haben einen Handlungsfaden, der mit main beginnt (mainthread) Event-Dispatcher: GUI-Programme haben zusätzlich einen Handlungsfaden, der die Benutzeraktionen beobachtet (Event-DispatchingThread / Event-Dispatcher) Event-Dispatcher: bearbeitet Maus-Klicks,... Garbage-Collector: Im Hintergrund ist immer noch ein weiterer Thread aktiv, der GarbageCollector (-Thread) Java-Programm mit seinen Threads Seite 7 Garbage-Collector: sammelt Speicher-Müll

8 Ein Fenster mit einem Knopf Widget ~ Window Gadget (Fenster-Dings): Knopf, etc. KlickMich import javax.swing.; import javax.swing.jframe; public class SimpleGUIDemo { der Knopf wird sehr groß sein! public static void creategui() { JFrame frame = JFrame(); frame.setdefaultcloseoperation(jframe.exit_on_close); // Knopf (ein Widget) erzeugen button = ("KlickMich!"); Fenster erzeugen Widget erzeugen // Knpof in Fenster setzen frame.add(button); Widget einfügen //Fenstergroesse bestimmen frame.setsize(400,500); // Breite Hoehe frame.setvisible(true); Größe bestimmen sichtbar machen public static void main(string[] args) { creategui(); Seite 8

9 Einfache GUI: Übersicht Fenster erzeugen Komponenten erzeugen [ contentpane holen Komponenten hinzufügen Größe bestimmen wegklickbar machen sichtbar machen frame = JFrame.. button =... getcontentpane() nur bis Version 1.4] frame.add(button); frame.setsize frame.setdefaultcloseoperation frame.setvisible Seite 9

10 So soll es aussehen! GUI mit 2 Widgets ein Label import javax.swing.; import javax.swing.jframe; import javax.swing.jlabel; public class SimpleGUIDemo { public static void creategui() { JFrame frame = JFrame(); frame.setdefaultcloseoperation(jframe.exit_on_close); // Knopf und Label erzeugen button = ("KlickMich!"); JLabel label = JLabel("ein Label"); // Knopf und Label in Fenster setzen frame.add(button); frame.add(label); frame.setsize(400,500); // Breite, Hoehe frame.setvisible(true); public static void main(string[] args){ creategui(); Seite 10

11 GUI mit 2 Widgets import javax.swing.; import javax.swing.jframe; import javax.swing.jlabel; public class SimpleGUIDemo { public static void creategui() { JFrame frame = JFrame(); frame.setdefaultcloseoperation(jframe.exit_on_close); // Knopf und Label erzeugen button = ("KlickMich!"); JLabel label = JLabel("ein Label"); // Knopf und Label in Fenster setzen frame.add(button); frame.add(label); frame.setsize(400,500); // Breite, Hoehe frame.setvisible(true); public static void main(string[] args){ creategui(); Man sieht nur das Label! Es füllt das gesamte Fenster aus und deckt den Knopf ab. Layout-Management notwendig! so sieht es aus Igitt! Seite 11

12 Layout-Management Layout-Management Layout (Position/Größe) von Komponenten festlegen Notwendig wenn in einem Fenster mehr als eine Komponente (Widget) platziert wird. Layout-Manager Objekt, das dies übernimmt Layout festlegen Zuordnen eines Layout-Managers Verschiedene Arten von Layout-Managern Legen selbständig das Layout nach verschiedenen Strategien entsprechend der Benutzervorgaben fest: Was wie groß wohin platzieren Absolute Größen und Positionen der Komponenten müssen (und sollten in der Regel) nicht angegeben werden Seite 12

13 Beispiel: Layout-Manager FlowLayout import import import import java.awt.flowlayout; javax.swing.; javax.swing.jframe; javax.swing.jlabel; public class SimpleGUIDemo { Flow-Layout positioniert von links nach rechts public static void creategui() { und zeilenweise. JFrame frame = JFrame(); frame.setdefaultcloseoperation(jframe.exit_on_close); // Knopf und Label erzeugen button = ("KlickMich!"); JLabel label = JLabel("ein Label"); // Layout-Manager setzen frame.setlayout( FlowLayout() ); // Knopf und Label in Fenster setzen frame.add(button); frame.add(label); frame mit Flow-Layout ausstatten frame.setsize(400,100); // Breite Hoehe frame.setvisible(true); public static void main(string[] args){ creategui(); Seite 13

14 einige wichtige Layout-Manager GridLayout Ordnet die Komponenten in einem Gitter (Grid) an. Die Reihenfolge des Einfügens der Komponenten bestimmt ihre Anordnung. BorderLayout Positioniert jeweils eine Komponente in 5 Regionen jeweils maximal eine Komponente Rand-Regionen: North, East, South, West (so klein wie möglich) Zentral-Region: CENTER (restlicher Platz) FlowLayout: Positioniert Komponenten links-nach-rechts / oben-nach-unten zeilenweise: Zeile voll, nächste Komponente in die nächste Zeile BoxLayout Ähnlich wie FlowLayout aber Komponente können explizit in eine neue Zeile positioniert werden Seite 14

15 Layout-Manager : BoarderLayout positioniert in eine von 5 Regionen: NORTH BorderLayout. NORTH BorderLayout. SOUTH BorderLayout. EAST BorderLayout. WEST BorderLayout. CENTER Beispiel: Frame im BoarderLayout mit 5 Labels. JLabel labeln = JLabel labels = JLabel labele = JLabel labelw = JLabel labelc = JLabel("CENTER"); WEST CENTER EAST SOUTH JLabel("NORTH"); JLabel("SOUTH"); JLabel("EAST"); JLabel("WEST"); frame.setlayout( BorderLayout()); frame.add(labeln,borderlayout.north); frame.add(labels,borderlayout.south); frame.add(labele,borderlayout.east); frame.add(labelw,borderlayout.west); frame.add(labelc); Seite 15 CENTER ist default-wert.

16 JPanel: GUIs hierarchisch aufbauen JPanel: ein Container als Komponente JFrame f = JFrame( "BorderLayout" ); f.setlayout( BorderLayout() ); f:jframe (BorderLayout) jp:jpanel (FlowLayout) JPanel jp = JPanel( FlowLayout() ); f.add( jp, BorderLayout.NORTH ); jp.add( ( "NORD-1" ) ); jp.add( ( "NORD-2" ) ); f.add( f.add( f.add( f.add( ( ( ( ( "OST" ), BorderLayout.EAST ); "SUED" ), BorderLayout.SOUTH ); "WEST" ), BorderLayout.WEST ); "ZENTRUM" ), BorderLayout.CENTER ); NORD-1 NORD-2 OST WEST f.setsize( 300, 200 ); f.setvisible( true ); SUED ZENTRUM Hierarchischer Aufbau Graphischer Aufbau Seite 16

17 BoxLayout BoxLayout: Komponenten stapeln f: Jframe (BoarderLayout) public class SimpleGUIDemo { public static void creategui() { JFrame f = JFrame( "BoxLayout" ); f.setlayout( BorderLayout() ); jp:jpanel (BoxLayout) NORD-1 JPanel jp = JPanel(); jp.setlayout( BoxLayout(jp, BoxLayout. Y_AXIS )); jp.add( ("NORD-1")); jp.add( ("NORD-2")); f.add(jp, BorderLayout.NORTH); f.add( f.add( f.add( f.add( ("OST"), BorderLayout.EAST ); ("SUED"), BorderLayout.SOUTH ); ("WEST"), BorderLayout.WEST ); ("ZENTRUM"),BorderLayout.CENTER); NORD-2 OST WEST SUED f.pack(); f.setvisible(true); ZENTRUM Komponente mit BoxLayout in Komponente mit public static void main(string[] args){ creategui(); BoarderLayout Seite 17

18 Größe bestimmen: pack / setsize Fenstergröße setzen entweder explizit einjframe.setsize(breite, Höhe); oder implizit berechnet einjframe.pack(); pack bestimmt die Größe selbständig aus der bevorzugten Größe der Komponenten Alle Komponenten möchten in einer bestimmten Größe erscheinen. Layout-Manager entscheiden über Anordnung und tatsächlich zugestandene Größe der Komponenten. Verschiedene Layout-Manager haben unterschiedliche Strategien zur Bestimmung von Layout, Größe der Komponenten und Einfluss des Programmcodes auf beides. Seite 18 JFrame f = Jframe(... ); f.setlayout(... ); f.add(...);... f.add(...); f.setsize( 200, 300 ); f.setvisible( true ); JFrame f = Jframe(... ); f.setlayout(... ); f.add(...);... f.add(...); f.pack(); f.setvisible( true );

19 Beispiel: Addier-GUI (1) Addierer: Komponenten Planung: Zwei Textfelder zur Eingabe Ein Knopf um die Addition zu starten Ein Textfeld zur Ausgabe JFrame JPanel Operand 1 Operand 2 + Ergebnis JTextField Seite 19

20 Beispiel: Addier-GUI (2) Addierer / Layout-Plan Operand 1 Operand 2 + Ergebnis North JFrame: BorderLayout Center JFrame (BoarderLayout) South jp:jpanel (FlowLayout) JTextField JPanel FlowLayout op1tf JTextField op2tf op1tf resulttf JTextField op2tf resulttf plusb plusb Komponenten / Layout Komponenten / hierarchische Struktur Seite 20

21 Beispiel: Addier-GUI (3) public class AddiererGui { public static void creategui() { JFrame frame = JFrame(); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setlayout( BorderLayout()); JTextField JTextField JTextField plusb op1tf op2tf resulttf = = = = ("+"); JTextField(10); JTextField(10); JTextField(10); North Center JPanel oppanel = JPanel(); oppanel.setlayout( FlowLayout() ); oppanel.add(op1tf); oppanel.add(op2tf); South frame.add(oppanel,borderlayout.north); frame.add(plusb,borderlayout.center); frame.add(resulttf,borderlayout.south); resulttf frame.pack(); frame.setvisible(true); op1tf public static void main(string[] args){ creategui(); Seite 21 plusb op2tf Der Knopf macht sich im gesamten Zentrum breit. Igitt!

22 Layout beeinflussen mit Labels und Panels Formatieren mit Labels und Panels Komponenten füllen ihren Platz aus: manchmal hässlich Mit zusätzlichem JPanel und (leeren) Labels kann formatiert werden JPanel JPanel JPanel JPanel op1tf op2tf resulttf op1tf resulttf plusb JPanel JPanel op2tf Knopf füllt das Zentrum völlig aus. Igitt! JLabel Seite 22 plusb Panel füllt das Zentrum völlig aus. OK! JLabel

23 Layout beeinflussen mit Labels und Panels JFrame frame = JFrame(); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setlayout( BorderLayout()); JTextField JTextField JTextField plusb op1tf op2tf resulttf = = = = (" + "); JTextField(10); JTextField(10); JTextField(10); JPanel oppanel = JPanel(); oppanel.setlayout( FlowLayout() ); oppanel.add(op1tf); oppanel.add(op2tf); JPanel pluspanel = JPanel(); pluspanel.setlayout( FlowLayout() ); pluspanel.add( JLabel() ); pluspanel.add( plusb ); pluspanel.add( JLabel() ); frame.add(oppanel,borderlayout.north); frame.add(pluspanel,borderlayout. CENTER ); frame.add(resulttf,borderlayout.south); Zentrum: leerers Label, Knopf, leeres Label frame.pack(); frame.setvisible(true); Seite 23

24 Komponenten gestalten / Addier-GUI (4) Aussehen und Verhalten der Komponenten kann vielfältig beeinflusst werden Formatiertierte Textfelder Schriftart... JTextField plusb= (" + "); op1tf= JFormattedTextField( java.text.decimalformat()); JTextField op2tf= JFormattedTextField( java.text.decimalformat()); op1tf.setcolumns(5); op2tf.setcolumns(5); op1tf.sethorizontalalignment(jtextfield.right); op2tf.sethorizontalalignment(jtextfield.right); op1tf.setfont( Font("monspaced", Font.PLAIN, 20)); op2tf.setfont( Font("monspaced", Font.PLAIN, 20)); JTextField resulttf = JTextField(10); resulttf.setfont( Font("monspaced", Font.PLAIN, 20)); resulttf.seteditable(false); Seite 24 Nur Zahleingaben annehmen Schriftstil und Ausrichtung festlegen Eingaben in Ausgabefeld verhindern Swing-Tutorial / API-Doku (Sun) für solche Tricks konsultieren!

25 Quellcode-Organisation : GUI-Klasse definieren Klassen für GUI-Objekte definieren statt... main (...) { JFrame einfenster =... einfenster.add(einekomponente);... besser: JFrame-Klasse definieren, organisiert sich selbst class MeineGUIKlasse extends JFrame { private meinekomponenten add(einekomponente); ( oder this.add(einekomponente); ) MeineGUIKlasse einguiobjekt = MeineGUIKlasse(); Seite 25

26 Quellcode-Organisation / Addier-GUI (5/1) public class AddiererGUI extends JFrame { private plusb; private JTextField op1tf; JFrame frame = JFrame(); private JTextField op2tf; frame.setdefaultcloseoperation(jframe.exit_on_close); private JTextField resulttf; frame.setlayout( BorderLayout());... public AddiererGUI() { super("addierer"); initview(); kein JFrame erzeugen, Objekt selbst ist JFrame Konstruktor ruft initview initview erzeugt GUI-Elemente private void initview() { this.setdefaultcloseoperation(jframe.exit_on_close); this.setlayout( BorderLayout()); plusb = (" + "); op1tf = JFormattedTextField( java.text.decimalformat()); op2tf = JFormattedTextField( java.text.decimalformat()); op1tf.setcolumns(5); op2tf.setcolumns(5); op1tf.sethorizontalalignment(jtextfield.right); op2tf.sethorizontalalignment(jtextfield.right); op1tf.setfont( Font("monspaced", Font.PLAIN, 20)); op2tf.setfont( Font("monspaced", Font.PLAIN, 20)); > Seite 26

27 Quellcode-Organisation / Addier-GUI (5/2) resulttf = JTextField(10); resulttf.setfont( Font("monspaced", Font.PLAIN, 20)); resulttf.seteditable(false); JPanel oppanel = JPanel(); oppanel.setlayout( FlowLayout() ); oppanel.add(op1tf); oppanel.add(op2tf); JPanel pluspanel = JPanel(); pluspanel.setlayout( FlowLayout() ); pluspanel.add( JLabel() ); pluspanel.add( plusb ); pluspanel.add( JLabel() ); this.add(oppanel,borderlayout.north); this.add(pluspanel,borderlayout.center); this.add(resulttf,borderlayout.south); this.pack(); // Ende initview // Ende AddiererGUI Seite 27

28 Quellcode-Organisation / Addier-GUI (6) public class Addierer { public static void main(final String[] args){ AddiererGUI addiergui = AddiererGUI(); addiergui.setvisible(true); Eine Hauptklasse erzeugt in main ein GUI-Objekt und aktiviert es (macht es sichtbar). Code-Organisation: Paket mit 2 Klassen: Addierer AddiererGUI Seite 28 addierer Hauptklasse Erzeugen, Kontrollieren GUI-Elemente

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

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 11/12. Kapitel 7. Grafische Benutzeroberflächen 1 Kapitel 7 Ziele 2 (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen Benutzung von Vererbung zur Erstellung individueller GUI-Klassen durch Erweiterung

Mehr

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI) 1 JAVA für Bauingenieure Alexander Karakas SS 2008 Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI) 21.05.2008 2 Was ist ein(e) GUI? GUI = Graphical User Interface = Graphische

Mehr

Java I Vorlesung 11 Graphische Oberflächen mit Swing

Java I Vorlesung 11 Graphische Oberflächen mit Swing Java I Vorlesung 11 Graphische Oberflächen mit Swing 5.7.2004 Swing Komponenten Layout-Manager Events Swing und Threads Die Java-Plattform 2 Die Java-Plattform 3 "Hello World" in Swing HelloWorldS.java

Mehr

GUI Programmierung mit JAVA Swing

GUI Programmierung mit JAVA Swing GUI Programmierung mit JAVA Swing Komponenten Layout Event Handling Imaging 2001 Thomas Weiler 1 JAVA Swing Bibliothek zur Erstellung grafischer Benutzerschnittstellen in JAVA Bietet Klassen für grafische

Mehr

...erinnern Sie sich? oopjs4b / kwhbkd4r

...erinnern Sie sich? oopjs4b / kwhbkd4r ...erinnern Sie sich? oopjs4b / kwhbkd4r !" Ereignisbehandlung in awt/swing führt Liste interessierter Behandler GUI- Komponente (z.b. Knopf) wird eingetragen trägt ein Ereigniskanal fertigt ab neuer Behandler

Mehr

Packages. Man kann mehrere Klassen in eine package zusammenfassen.

Packages. Man kann mehrere Klassen in eine package zusammenfassen. Packages Man kann mehrere Klassen in eine package zusammenfassen. Diese müssen dann in einem Unterverzeichnis liegen, dessen Name der Packagename ist. Jede Datei der Package muss mit package ; beginnen,

Mehr

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

Ziel dieses Kapitels: Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen (engl.: graphical user interface, GUI) in Java GUI-Programmierung in Java GUI-Programmierung in Java 2002 Prof. Dr. Rainer Manthey Informatik II 1 AWT und Swing Ziel dieses Kapitels: Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Exkurs: Graphische Benutzeroberflächen FH Braunschweig/Wolfenbüttel Sommersemester 2009 1 / 22 Gliederung I Wiederholung Klassen, Objektorientierung (Kapitel 10,11) Exkurs:

Mehr

Einführung in Swing. Graphical User Interface

Einführung in Swing. Graphical User Interface Einführung in Swing Ho Ngoc Duc IFIS - Universität zu Lübeck Graphical User Interface Ein GUI-Programm beinhaltet: Graphische Darstellung der Anwendungsdaten und Interaktionsmöglichkeiten in Fenstern Steuerung

Mehr

GUIs in Java und ihre Programmierung

GUIs in Java und ihre Programmierung GUIs in Java und ihre Programmierung Einführung GUI = Graphical User Interface graphische Benutzerschnittstelle Java Tutorial java.sun.com/docs/books/tutorial/index.html Java Documentation (in Version

Mehr

NTB Druckdatum: 01.04.13 -

NTB Druckdatum: 01.04.13 - AWT UND SWING AWT = abstract windowing toolkit Bausteine Eigenes Fenster Programmcode steht nicht im Main, sondern in einer separaten Klasse extends JFrame JWindow selbstständiges Fenster, ohne Rahmen

Mehr

Hochschule der Medien Prof. Uwe Schulz 14. Juli 2010 Klausur Informatik, EDV-Nr. 40301 Seite 1 von 5. Teil 2: Aufgaben

Hochschule der Medien Prof. Uwe Schulz 14. Juli 2010 Klausur Informatik, EDV-Nr. 40301 Seite 1 von 5. Teil 2: Aufgaben Hochschule der Medien Prof Uwe Schulz 14 Juli 2010 Klausur Informatik, EDV-Nr 40301 Seite 1 von 5 Name: Matr Nr: Teil 2: Aufgaben Hilfsmittel: alle außer tragbare Computer und Nachbar Bearbeitungszeit:

Mehr

Benutzeroberflächen. Java Teil 4

Benutzeroberflächen. Java Teil 4 Benutzeroberflächen Java Teil 4 Einleitung Eine grafische Benutzeroberfläche (Graphical User Interface) ermöglicht dem Benutzer die Interaktion mit dem Computer über grafische Symbole. Die GUI haben in

Mehr

Objektorientierte Software-Entwicklung

Objektorientierte Software-Entwicklung Objektorientierte Software-Entwicklung Priv.-Doz. Dr. Rolf Hennicker 08.01.2003 AWT und Swing AWT (Abstract Window Toolkit) und Swing 2 AWT (Abstract Window Toolkit) und Swing AWT und Swing bieten eine

Mehr

J.1. J.1 GUI-Programmierung in in Java. 2002 Prof. Dr. Rainer Manthey Informatik II 1

J.1. J.1 GUI-Programmierung in in Java. 2002 Prof. Dr. Rainer Manthey Informatik II 1 GUI-Programmierung in Java GUI-Programmierung in in Java 2002 Prof Dr Rainer Manthey Informatik II 1 AWT und Swing Ziel dieses Kapitels: : Einführung in die Grundzüge der Programmierung graphischer Benutzeroberflächen

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 14 Einstieg in die Informatik mit Java Swing Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 14 1 Einführendes Beispiel 2 Eigenschaften von Swing 3 Typisches Swing-Applet

Mehr

Vorlesung 13. Sitzung Grundlegende Programmiertechniken

Vorlesung 13. Sitzung Grundlegende Programmiertechniken Vorlesung 13. Sitzung Grundlegende Programmiertechniken Wintersemester 2007/2008 Dozent Nino Simunic M.A. Computerlinguistik, Campus DU Grundlegende Programmiertechniken, WS 2007/2008 GUI-Entwicklung mit

Mehr

Techniken der Projektentwicklung

Techniken der Projektentwicklung Einleitung Architektur Swing Beispiele Aufgabe Techniken der Projektentwicklung Swing Concepts Ingo Lütkebohle Termin 11 Ingo Lütkebohle Techniken der Projektentwicklung 1 Einleitung Architektur Swing

Mehr

Grafische Benutzeroberflächen mit Swing

Grafische Benutzeroberflächen mit Swing Grafische Benutzeroberflächen mit Swing KW 30, Zentralübung Informatik II 2006-07-24 Klausur: Stichpunkte 1. Auswertung System.out.println("abc" instanceof String); Ergebnis von instanceof ist ein boolean,

Mehr

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Graphische Benutzerschnittstellen II GUI und Aktionen verknüpfen MVC-Muster Seite 1 GUI mit Aktionen verknüpfen Seite 2 ActionListener

Mehr

GUI Programmierung in Java

GUI Programmierung in Java vs und niemals mischen! Daher muss man sich für eine Klasse entscheiden 1 (Abstract Window Toolkit) schwergewichtige Alle Elemente werden vom Betriebssytem gemalt sehen aus wie alle anderen Programme auf

Mehr

GUI-Programmierung in Java

GUI-Programmierung in Java GUI-Programmierung in Java Jan Pihl, Daniel Bugdalle 1. Einleitung Betreuer: Thomas Ströder Die Bedienung von Software stellt sich oft als etwas schwierig für viele Nutzer heraus, wenn es keine grafische

Mehr

Grundlagen der Programmierung APPLETS

Grundlagen der Programmierung APPLETS Grundlagen der Programmierung APPLETS Inhalt dieser Einheit Java-Applets: Java-Applets Vor- und Nachteile Sicherheitskonzepte Methoden Einbetten in HTML Graphical User Interface 2 Java Applets Applets

Mehr

Wiederholung: Objektorientierte Oberflächen-Programmierung mit Java und Swing

Wiederholung: Objektorientierte Oberflächen-Programmierung mit Java und Swing Wiederholung: Objektorientierte Oberflächen-Programmierung mit Java und Swing Heinrich Hußmann Ludwig-Maximilians-Universität München Sommersemester 2003 Ludwig-Maximilians-Universität München Prof. Hußmann

Mehr

Vorlesung Programmieren. Bisher... Apple Lisa Office System 3.1. GUIs mit Java

Vorlesung Programmieren. Bisher... Apple Lisa Office System 3.1. GUIs mit Java Vorlesung Programmieren GUIs mit Java Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck https://www.itm.uni-luebeck.de/people/fischer Bisher... 2 Apple Lisa Office System 3.1 3 Graphical

Mehr

Graphische Benutzungsoberflächen

Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen Graphische Benutzungsoberflächen (graphical user interfaces, GUI) dienen zur interaktiven Bedienung von Programmen, Ein- und Ausgabe mit graphischen Techniken und visuellen

Mehr

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik www.munz-udo.de

AK-Automatisierungs und Kommunikationstechnik TI Technische Informatik. NWT Netzwerktechnik www.munz-udo.de Stand FTE2 Anfang 4. Semester plus Projekt Multiuhren_Thread Ich gehe im Hinblick auf Klassenarbeiten und der Abschlussprüfung davon aus, dass Sie das Skript OOP JAVA2 durchgearbeitet haben. Wir haben

Mehr

Teil 1: Grundeigenschaften von Rechnern und Software

Teil 1: Grundeigenschaften von Rechnern und Software Blatt Nummer: 1 Teil 1: Grundeigenschaften von Rechnern und Software Aufgabe 1.1 [2P] Welcher fundamentale Unterschied besteht zwischen dem Zweck eines Computer von dem Zweck anderer Maschinen (etwa einer

Mehr

Mensch-Maschine-Interaktion

Mensch-Maschine-Interaktion Universität Dortmund, Fachbereich Informatik Peter Bollweg, OH16 E08, bollweg@ls7.cs.uni-dortmund.de, 6328 Constantin Timm, OH16 E06, timm@ls12.cs.uni-dortmund.de, 6144 Christian Asche Dortmund, 19. Oktober

Mehr

Probeklausur: Programmierung WS04/05

Probeklausur: Programmierung WS04/05 Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,

Mehr

Informatik I Eprog HS10

Informatik I Eprog HS10 Department of Informatics software evolution & architecture lab Informatik I Eprog HS10 Übung 7 1 Aufgabe: Interface 1.1 Lernziele 1. Sie können eine Schnittstelle definieren und diese in Klassen implementieren.

Mehr

Swing Lernen am Code Teil 1

Swing Lernen am Code Teil 1 Swing Lernen am Code Teil 1 Swing Fenster erzeugen import java.awt.* import java.awt.event.* import javax.swing.* class SwingDemo{ static JFrame Fenster; public static void main(string[] args){ } } Fenster

Mehr

Java Lab 2006/12/13 Client

Java Lab 2006/12/13 Client Java Lab 2006/12/13 Client Prof. Dr. Bernhard Humm Version: 1.0 Date: 2006/12/06 Darmstadt University of Applied Sciences Department of Computer Science Schöfferstr. 8b 64295 Darmstadt Germany 1 Einleitung

Mehr

Fortgeschrittene Objektorientierung

Fortgeschrittene Objektorientierung Fortgeschrittene Objektorientierung GUI-Programmieren in Java Gregor Snelting Andreas Lochbihler Universität Karlsruhe Lehrstuhl Programmierparadigmen 27. Mai 2008 Gregor Snelting (Universität Karlsruhe)

Mehr

DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung

DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung DHBW Karlsruhe, Vorlesung Programmieren, Events Musterlösung Aufgabe Editor package BA.GUI.Swing; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.logging.level; import java.util.logging.logger;

Mehr

Softwarepraktikum: Enigma

Softwarepraktikum: Enigma Softwarepraktikum: Enigma Martin Steffen Sommersemester 2003 Abschnitt I GUI Inhalt: Übersicht gui-pakete in Java: AWT, Swing Komponenten und Behälter Layout Ereignisse und Ereignisbehandlung Ereignismodell

Mehr

2A Basistechniken: Weitere Aufgaben

2A Basistechniken: Weitere Aufgaben 2A Basistechniken: Weitere Aufgaben 2A.3 Programmierung unter UNIX/Linux 1. Gegeben sind einige Ausschnitte von C-Programmen, die unter UNIX/Linux ausgeführt werden sollen. Beantworten Sie die zugehörigen

Mehr

Swing :Komponenten I (Teil 2)

Swing :Komponenten I (Teil 2) l Bei Swing handelt es sich um eine Programmierschnittstelle und Grafikbibliothek zum Programmieren von grafischen Benutzeroberflächen l Swing stellt eine Menge von Klassen zur Verfügung l Swing wurde

Mehr

Programmieren 2 Selbststudium Semesterwoche 4

Programmieren 2 Selbststudium Semesterwoche 4 Programmieren 2 Selbststudium Semesterwoche 4 Kapitel 11.1, 11.2 und 11.3 1. Das Konzept "Interface" ist wichtig und ist uns schon mehrfach begegnet. In welchen Zusammenhängen hatten wir es schon mit "Interfaces"

Mehr

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.2 Inhalt 1. Toolbar 1. JToolBar 2. Menü 1. JMenuBar 2. JMenu 3. JMenuItem 4. KeyStroke 5. Beispiel JMenuDemo1 6. JCheckBoxMenuItem 7. JRadioButtonMenuItem 8. Beispiel JMenuDemo2 9. JPopupMenu 10. Beispiel

Mehr

Einführung in die Informatik - Teil 6b -

Einführung in die Informatik - Teil 6b - Eckart Modrow Java-Anwendungen mit dem JBuilder S. 1 Einführung in die Informatik - Teil 6b - Java-Anwendungen mit dem JBuilder Inhalt: 1. Anwendungen versus Applets 2. Die Arbeit mit IDEs 3. J++-Anwendungen

Mehr

Programmierkurs. 11. Vorlesung. Sven Mallach. 13. Januar 2010. Institut für Informatik - Lehrstuhl Prof. Dr. M. Jünger 1/ 60

Programmierkurs. 11. Vorlesung. Sven Mallach. 13. Januar 2010. Institut für Informatik - Lehrstuhl Prof. Dr. M. Jünger 1/ 60 Programmierkurs 11. Vorlesung Sven Mallach Institut für Informatik - Lehrstuhl Prof. Dr. M. Jünger 13. Januar 2010 1/ 60 Klausuren 1. Termin: Di. 23.02.2010 2. Termin: Do. 18.03.2010 Uhrzeit: In beiden

Mehr

Interaktive Elemente, GUI-Programmierung

Interaktive Elemente, GUI-Programmierung Softwaretechnik für IM, WS2015/2016 http://knopper.net/bw/swt/ Übung 4 Interaktive Elemente, GUI-Programmierung 1. Schreiben Sie ein Programm (wahlweise als Applet oder Applikation, oder beides), das die

Mehr

Graphische Programmierung: GUIs: graphical user interfaces

Graphische Programmierung: GUIs: graphical user interfaces Graphische Programmierung: GUIs: graphical user interfaces Ziel: Java -Programmierung und Handhabung von graphischen Benutzeroberflächen (in Applets) mehrere Fenster Fenster-Eigenschaften: aktiv oder inaktiv

Mehr

Auszug aus der Klassenstruktur

Auszug aus der Klassenstruktur Swing javax.swing Auszug aus der Klassenstruktur JComponent AbstractButton JColorChooser JComboBox JInternalFrame JLabel JList JPanel JTable JTextComponent JTree JToolBar JToolTip JToggleButton JButton

Mehr

Kapitel 14. Systemarchitektur

Kapitel 14. Systemarchitektur 1 Kapitel 14 Ziele 2 Grundprinzipien der verstehen Schichtenarchitekturen kennenlernen Modelle und Programme mit Paketen strukturieren Eine Architektur für eine einfache Bankanwendung konstruieren Grundprinzipien

Mehr

Ansonsten VIEL SPAß! Nicholas Ohs (GK 11 IF 2)

Ansonsten VIEL SPAß! Nicholas Ohs (GK 11 IF 2) !!!ACHTUNG!!! Wenn jemand Rechtschreib- oder Grammatikfehler findet, kann er sie behalten. Ich habe diesen Text nicht Korrektur gelesen. Deshalb bitte: Inhaltliche Fehler MELDEN!!! Ansonsten VIEL SPAß!

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Exkurs GUI-Programmierung mit Java-SWING Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Für Hinweise und konstruktive Kritik

Mehr

Entwicklung von E-Learning Komponenten zur Computergrafik

Entwicklung von E-Learning Komponenten zur Computergrafik F Entwicklung von E-Learning Komponenten zur Computergrafik Development of E-learning components for computer graphics Markus Stollenwerk, Rainer Friesen und Daniel Valentin Master Projektstudium Betreuer:

Mehr

Tutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane

Tutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane Hochschule Harz Programmierung2 Tutorial 04: FB Automatisierung und Informatik Dipl.-Inf., Dipl.-Ing. (FH) M. Wilhelm Programmierung 2 für MI / WI Thema: Swing, JSplitPane und I/O Versuchsziele Kenntnisse

Mehr

Java Design und Event Handling. Natascha Hoebel Professur Prof. R. V. Zicari. AWT SWING Layout Design Event Handling

Java Design und Event Handling. Natascha Hoebel Professur Prof. R. V. Zicari. AWT SWING Layout Design Event Handling Java Design und Event Handling Natascha Hoebel Professur Prof. R. V. Zicari AWT SWING Layout Design Event Handling Benutzerschnittstellen User Interfaces (UI) UI: GUI, WEB-Schnittstellen GUI: interaktive

Mehr

Applets. Applets. Applets. Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung von einem Java-fähigen Web-Browser oder sog.

Applets. Applets. Applets. Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung von einem Java-fähigen Web-Browser oder sog. Johann Wolfgang Goethe-Universität Professur für Graphische Datenverarbeitung Fachbereich Informatik und Mathematik Prof. Dr. Detlef Krömker Applet: Java-Programm Eingebettet in einer HTML-Seite Ausführung

Mehr

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag

Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:

Mehr

Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster

Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster by Ali Bastan Gliederung Grundlagen von Swing 1. Kurze Einleitung 2. Warum Swing, wenn es das AWT gibt? 3. Was ist Swing? 4. Merkmale von Swing 5.

Mehr

Swing Grundlagen. Andre Eichmann

Swing Grundlagen. Andre Eichmann Swing Grundlagen Andre Eichmann Inhaltsverzeichnis Swing: Grundlagen - Einleitung - Ein einleitendes Beispiel Swing: Container und Menüs - Hauptfenster - Menüs Swing: Grundlagen Nachteile von AWT: - Schwierig,

Mehr

SWT. -The Standard Widget Toolkit- Inhaltsverzeichnis. Thomas Wilhelm SWT. 1. Was ist SWT?

SWT. -The Standard Widget Toolkit- Inhaltsverzeichnis. Thomas Wilhelm SWT. 1. Was ist SWT? Java -The Standard Widget Toolkit- Inhaltsverzeichnis 1. Was ist? - Vorteile von - Nachteile von 2. Vorbereitungen für 3. Das erste Programm in 4. Widgets und Styleparameter 5. - Layouts Was ist ein Widget?

Mehr

Fachhochschule Fulda Fachbereich Angewandte Informatik. Hausarbeit Seminar: Java3D. Java Layout-Manager WS 2002/2003

Fachhochschule Fulda Fachbereich Angewandte Informatik. Hausarbeit Seminar: Java3D. Java Layout-Manager WS 2002/2003 Fachhochschule Fulda Fachbereich Angewandte Informatik Hausarbeit Seminar: Java3D Java Layout-Manager WS 2002/2003 Verfasser: m.dziadek@gmx.de Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung...

Mehr

GUI. Programmiermethodik. Eva Zangerle Universität Innsbruck

GUI. Programmiermethodik. Eva Zangerle Universität Innsbruck GUI Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

JAVA Oberflächen mit Swing

JAVA Oberflächen mit Swing JAVA Oberflächen mit Swing Grafik von http://javafx.com 168 168 AGENDA Grundlagen GUI Swing JavaFX 169 169 GRAPHISCHE BENUTZEROBERFLÄCHEN (1) AWT = Abstract Window Toolkit Verwendet die jeweiligen GUI-Komponenten

Mehr

Ein Manager mit CardLayout layout/cards.java

Ein Manager mit CardLayout layout/cards.java 201 Copyright 1996-1998 by Axel T. Schreiner. All Rights Reserved. Ein Manager mit CardLayout layout/cards.java CardLayout dient vor allem zum Aufbau von Inspektoren: In der gleichen Fläche soll je nach

Mehr

Programmieren lernen mit Groovy Graphische Oberflächen GUIs (Graphical User Interfaces)

Programmieren lernen mit Groovy Graphische Oberflächen GUIs (Graphical User Interfaces) Programmieren lernen mit Groovy Graphische Oberflächen GUIs (Graphical User Interfaces) Seite 1 GUI Beispiel Addierer : Code und erzeugte GUI groovy.swing.swingbuilder javax.swing.windowconstants swing

Mehr

11. GUI-Programmierung mit SWING Überblick

11. GUI-Programmierung mit SWING Überblick 11. GUI-Programmierung mit SWING Überblick 11.1 Einführung 11.2 Einfache Swing Komponenten 11.3 Ereignisbehandlung und Adapterklassen 11.4 Zeichnen 11.5 Dialoge 11.6 Layout Manager 11.7 Komplexere Swing

Mehr

SWING. DVG2-09 -Swing 1

SWING. DVG2-09 -Swing 1 SWING DVG2-09 -Swing 1 GUIs Swing stellt eine Menge von Klassen zur Verfügung, mit deren Hilfe man in Java portable GUIs programmieren kann. GUI: Graphical User Interface (Grafische Nutzer Schnittstelle)

Mehr

Codestil. Erläuterung und Definition eines einheitlichen Codestils. Anfänger-Praktikum SS 2004 Gruppe 2 Tutor Aaron Ruß Autor: Tomas Cernaj

Codestil. Erläuterung und Definition eines einheitlichen Codestils. Anfänger-Praktikum SS 2004 Gruppe 2 Tutor Aaron Ruß Autor: Tomas Cernaj Codestil Erläuterung und Definition eines einheitlichen Codestils Anfänger-Praktikum SS 2004 Gruppe 2 Tutor Aaron Ruß Autor: Tomas Cernaj Themenvorschau Was versteht man unter einem Codestil? Wozu wird

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Software Engineering Entwurfsmuster (update: 11.6.)

Software Engineering Entwurfsmuster (update: 11.6.) Software Engineering Entwurfsmuster (update: 11.6.) Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Entwurfsmuster Entwurfsmuster (Design Patterns) geben bewährte

Mehr

GRAFISCHE BENUTZERSCHNITTSTELLEN

GRAFISCHE BENUTZERSCHNITTSTELLEN Vorlesung 4.4 GRAFISCHE BENUTZERSCHNITTSTELLEN Dr. Philip Mayer # 1 GUIs Grafische Benutzerschnittstellen (GUIs, Graphical User Interfaces) bieten dem Benutzer Zugriff auf ein Anwendungssystem GUIs sind

Mehr

6. Objektorientiertes Design

6. Objektorientiertes Design 6. Objektorientiertes Design 6.1 Entwurfsmuster 6.2 Zusammenfassendes Beispiel 6.3 Umsetzung des Model-View-Controller- Musters in Java 6. Objektorientiertes Design 6-1 Grundlage des objektorientierten

Mehr

3 Die Kunst der (visuellen) Komposition

3 Die Kunst der (visuellen) Komposition 77 3 Die Kunst der (visuellen) Komposition Benutzer, die noch in Eclipse 3.2 den in der Callisto-Distribution enthaltenen Eclipse Visual Editor (VE) verwendet hatten, werden in der Europa-Distribution

Mehr

Grafische Benutzeroberfläche mit Glade und Python

Grafische Benutzeroberfläche mit Glade und Python Grafische Benutzeroberfläche mit Glade und Python Grundsätzliches Die grafische Benutzeroberfläche (GUI) wird getrennt von dem Programm erstellt und gespeichert. Zu dieser GUI-Datei wird ein passendes

Mehr

2. Programmierung von Benutzungsschnittstellen

2. Programmierung von Benutzungsschnittstellen 2. Programmierung von Benutzungsschnittstellen 2.1 Modell-Sicht-Paradigma 2.2 Bausteine für grafische Oberflächen 2.3 Ereignisgesteuerte Programme 1 Benutzungsoberflächen Technische Realisierungen: Stapelverarbeitungssprache

Mehr

Lösungen. 1. Aufgabe. // ActionExample.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event.

Lösungen. 1. Aufgabe. // ActionExample.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.event. Lösungen 1. Aufgabe // ActionExample.java import java.awt.event.*; import javax.swing.*; import javax.swing.event.*; public class ActionExample extends JFrame int counter = 1; JLabel counterlabel; public

Mehr

Softwarepraktikum. WWU Münster Institut für Informatik

Softwarepraktikum. WWU Münster Institut für Informatik Softwarepraktikum WWU Münster Institut für Informatik Prof. Dr. Markus Müller-Olm Peter Lammich Alexander Wenner WS 09/10 Aufgabenstellung 22.02.2010 Hauptaufgabe Entwickeln Sie in Gruppenarbeit einen

Mehr

Dr. Monika Meiler. Inhalt

Dr. Monika Meiler. Inhalt Inhalt 12 Grafische Benutzerschnittstellen... 12-2 12.1 Komponenten... 12-2 12.1.1 AWT und Swing... 12-2 12.1.2 Beispiel Hallo Welt!... 12-3 12.2 Ereignisverarbeitung... 12-6 12.3 Grafik... 12-10 12.3.1

Mehr

GUI Programmierung mit GTK

GUI Programmierung mit GTK LinuxFocus article number 295 http://linuxfocus.org GUI Programmierung mit GTK by Özcan Güngör About the author: Ich benutze Linux seit 1997. Freiheit, Flexibilität, Open

Mehr

Aufgabe 1 AUFRÄUMARBEIT, KONSISTENZ. »Programmieren«, WS 2006/2007. Nino Simunic M.A.

Aufgabe 1 AUFRÄUMARBEIT, KONSISTENZ. »Programmieren«, WS 2006/2007. Nino Simunic M.A. »Programmieren«, WS 2006/2007 Nino Simunic (nino.simunic@uni-due.de) Übungsblatt 9 Die benötigten Quelltexte finden Sie hier: http://imperia.uni-due.de/imperia/md/content/computerlinguistik/uebungsblatt_9_code.zip

Mehr

14 Swing-Komponenten. 2009 2014, Prof. Dr. D. Ratz

14 Swing-Komponenten. 2009 2014, Prof. Dr. D. Ratz 14 Swing-Komponenten 2009 2014, Prof. Dr. D. Ratz 14.1 Typische Komponenten für Benutzerschnittstellen Das Abstract Window Toolkit (AWT) liefert bereits viele Möglichkeiten für Komponenten für graphische

Mehr

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung

Übersicht. Informatik 2 Teil 3 Anwendungsbeispiel für objektorientierte Programmierung Übersicht 3.1 Modell Konto 3.2 Modell Konto - Erläuterungen 3.3 Benutzer Ein- und Ausgabe mit Dialogfenster I 3.4 Benutzer Ein- und Ausgabe mit Dialogfenster II 3.5 Klassen- und Objekteigenschaften des

Mehr

Programmieren II. Grafische Benutzeroberflächen mit Swing. Heusch 2 (2.Bd) Ratz 13, 14. www.kit.edu. Institut für Angewandte Informatik

Programmieren II. Grafische Benutzeroberflächen mit Swing. Heusch 2 (2.Bd) Ratz 13, 14. www.kit.edu. Institut für Angewandte Informatik Programmieren II Grafische Benutzeroberflächen mit Swing Heusch 2 (2.Bd) Ratz 13, 14 KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker GUI-Programmierung mit Java PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker Steffen Helke Technische Universität Berlin Fachgebiet Softwaretechnik 15. April 2013 Übersicht GUI-Bibliotheken

Mehr

Teil 1: Grundeigenschaften von Rechnern und Software

Teil 1: Grundeigenschaften von Rechnern und Software Blatt Nummer: 1 Teil 1: Grundeigenschaften von Rechnern und Software Aufgabe 1.1 [3P] Nennen Sie mindestens 3 Arten von Programmen zur Softwareentwicklung Editor, Compiler, Linker, Debugger, Interpreter,...

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE24-KlassenUndObjekteFort (Stand 28.09.2012) Aufgabe 1: Implementieren Sie eine Klasse Student. Die Klasse soll eine Methode immatrikulieren haben,

Mehr

Einbindung der Tastatur

Einbindung der Tastatur Einbindung der Tastatur Auch die Tastatur kann man wie die Maus zur interaktiven Programmsteuerung verwenden. Bei der Maus ist stets klar, welche grafische Komponente bei einem Klick oder einer Bewegung

Mehr

2 Entwurf eines einfachen Telefonbuchs

2 Entwurf eines einfachen Telefonbuchs Kapitel 2 Entwurf eines einfachen Telefonbuchs (Phase 1) Seite 1 2 Entwurf eines einfachen Telefonbuchs Zuerst solltest du dir darüber Gedanken machen, welche Funktionen von unserem Telefonbuch erwarten.

Mehr

Session 1: Classes and Applets

Session 1: Classes and Applets Session 1: Classes and Applets Literature Sprechen Sie Java, ISBN 3-89864-117-1, dpunkt deutsch Java für Studenten, ISBN 3-8273-7045-0, PearsonStudium deutsch Java in a Nutshell, ISBN: 0-59600-283-1, O'Reilly

Mehr

Java Projekt: Tic Tac Toe + GUI

Java Projekt: Tic Tac Toe + GUI Java Projekt: Tic Tac Toe + GUI Rechnerpraktikum aus Programmierung im WS 2005/06 unter der Leitung von Dr. Michael Hahsler Tadeh Amirian (h0253821) 10.01.2006 1) Problemdefinition Beim TicTacToe Spiel

Mehr

Klassen in Java. Klassen

Klassen in Java. Klassen Klassen in Java Klassen Klassen beschreiben Objekte, die abstakte oder konkrete Sachverhalte modellieren. Objekte sind durch einen Status gekennzeichnet (State). Der Status eines Objektes ergibt sich aus

Mehr

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen

AKTUEL ZU JAVA 8 PROGRAMMIEREN IN JAVA. 7. Auflage. Im Internet: Alle Beispielprogramme und Lösungen L AKTUEL ZU fritz JOBST JAVA 8 PROGRAMMIEREN IN JAVA 7. Auflage Im Internet: Alle Beispielprogramme und Lösungen 4 1 Der Einstieg in Java keinem Fall zulässig. Die Schreibweisen Hello.java für den Namen

Mehr

von Anja Austermann Drag and Drop

von Anja Austermann Drag and Drop von Anja Austermann Drag and Drop »Drag and Drop«ist die Bezeichnung für den Datentransfer zwischen unterschiedlichen Anwendungen mit grafischer Benutzeroberfläche. Zur Zeit arbeitet Drag and Drop in Java

Mehr

Grundlagen der Informatik

Grundlagen der Informatik Hochschule der Medien Stuttgart Studiengang Audiovisuelle Medien Grundlagen der Informatik Aufgabensammlung Prof. Dr. Bernd Eberhardt Jochen Bomm Prof. Uwe Schulz Sommersemester 2006 Organisation des Informatik

Mehr

Test von Oberflächen. 6. Test von Software mit Nutzungsoberflächen. Erinnerung: GUI-Aufbau mit Swing. Achtung: Swing und Threads

Test von Oberflächen. 6. Test von Software mit Nutzungsoberflächen. Erinnerung: GUI-Aufbau mit Swing. Achtung: Swing und Threads 6. Test von Software mit Nutzungsoberflächen Ansätze zum Oberflächentest Erinnerung: GUI-Aufbau mit Swing Einführung in FEST Systematische Nutzung von FEST Teststrategien Capture& Replay Vorstellung von

Mehr

Kurs OPR. Objektorientierte Programmierung

Kurs OPR. Objektorientierte Programmierung Kurs OPR Objektorientierte Programmierung Lektion: 008-GUI-Komp., eigenst. Programme Zürcher Hochschule für Angewandte Wissenschaften Mitglied der Fachhochschule Zürich Version 1.4 Inhaltsverzeichnis 1

Mehr

Klausur vom 14. Juni 2004. Informatik 4

Klausur vom 14. Juni 2004. Informatik 4 Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik, Burgdorf Klasse: EV02-1 Name, Vorname: Klausur vom 14. Juni

Mehr

Java Desktop Anwendungen

Java Desktop Anwendungen 5 1 Java Desktop Anwendungen das Problem: Desktop-Anwendungen werden mit Hilfe der Swing- Bibliothek programmiert, aber die Swing-Bibliothek ist riesig und unübersichtlich es gab kein Programmiergerüst

Mehr

Java GUI und Applet Grundlagen

Java GUI und Applet Grundlagen In diesem Kursteil Kursübersicht Modul 1 : Die Entwicklung von Java GUIs Modul Einleitung Lektion 1 - Java GUI Grundlagen Lektion 2 - Layout Manager Lektion 3 - Kreieren komplexer Layouts Kreieren eines

Mehr

GUI Design. Universität Paderborn Prof. Dr. Stefan Böttcher. Java Swing und AWT

GUI Design. Universität Paderborn Prof. Dr. Stefan Böttcher. Java Swing und AWT GUI Design Java Swing und AWT 1 Gui Design Von Hand Mittels visuellem GUI Designer 2 Warum von Hand? Grundkonzepte erlernen Zum Verständnis des von GUI Designern generierten Codes unerlässlich GUI Designer

Mehr

Sehenswert: Grafische Benutzeroberflächen mit JavaFX

Sehenswert: Grafische Benutzeroberflächen mit JavaFX Sehenswert: Grafische Benutzeroberflächen mit JavaFX Ø JavaFX ØGrundstruktur einer FX-GUI Ø Erste Schritte 1 JavaFX JavaFX ist eine API für GUIs ab Java 8 im Standard modernes Aussehen multi-medial styling-fähig

Mehr

In Track B generell gute Java-Kenntnisse vorausgesetzt!

In Track B generell gute Java-Kenntnisse vorausgesetzt! Gliederung Track A (Technik, montags): A1. Eingabe- und Ausgabetechnik bei Rechnersystemen A2. Technik der digitalen Bildverarbeitung A3. Technik der digitalen Tonverarbeitung A4. Technik der digitalen

Mehr

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1. Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1

Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1. Abteilung Informatik, JFC/Swing 2004 Diego Schmidlin V2.1 Inhalt 1. Swing Komponenten 1. Klassenhierarchie 2. Beteiligte Packages 3. Schachtelungs-Hierarchie 4. Swing-Applikation als Klasse 2. Basis Komponente 1. JComponent 3. Text Komponenten 1. JLabel 2. JTextField

Mehr

Ereignisbehandlung 21

Ereignisbehandlung 21 Ereignisbehandlung 21 3 Ereignisbehandlung Dieses Kapitel beschäftigt sich mit der Ereignisbehandlung, d.h. der Reaktion eines Programms auf Eingaben durch benutzende Personen. Nach einigen ersten Beispielen

Mehr