11. GUI-Programmierung mit SWING Überblick
|
|
- Carsten Engel
- vor 6 Jahren
- Abrufe
Transkript
1 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 Komponenten Prof. Dr. Björn Dreher Liste Programmieren - Java GUI-Programmierung mit SWING Überblick: Layout Manager Einleitung Prof. Dr. Björn Dreher Liste Programmieren - Java 578
2 Höhe Einleitung Layout Manager Arrangiert Child Komponenten innerhalb eines Containers Verwendet bestimmtes Schema für die Anordnung der Komponenten: Position Breite, Höhe LayoutManager (x, y) Breite Container Component Jeder Container besitzt bereits ein geeignetes LayoutManager Objekt Abändern: Component Component Component mycontainer.getcontentpane().setlayout( new BorderLayout()); Referenz auf LayoutManager i.a. nicht benötigt Component Prof. Dr. Björn Dreher Liste Programmieren - Java Einleitung Layout Manager Wird aktiv, wenn dolayout() des Containers aufgerufen wird Reorganisiere den Inhalt Ruft dann setlocation() oder setbounds() der Child Komponenten auf dolayout() des Containers wird aufgerufen, wenn Container zum ersten Mal angezeigt wird revalidate() des Containers aufgerufen wird Container als Nachfahren einer Window Klasse (Frame, JFrame, JWindow) werden automatisch validiert nach pack() nach Resize Operation Prof. Dr. Björn Dreher Liste Programmieren - Java 580
3 Einleitung Wichtige Komponenten Größen Minimum Size Maximum Size Preferred Size Layout Manager fragt diese Größen ab Muss sich nicht daran halten, je nach seinem eigenen Schema Kann für seinen Container entsprechende Größen berechnen Vorgehensweise Statt mit den Eigenschaften eines Layout Managers zu kämpfen, besser die Komponenten auf mehrere Panels jeweils mit ihrem eigenen Layout Manager verteilen Wenn alles nichts hilft: GridBagLayout Prof. Dr. Björn Dreher Liste Programmieren - Java GUI-Programmierung mit SWING Überblick: Layout Manager Einleitung Prof. Dr. Björn Dreher Liste Programmieren - Java 582
4 FlowLayout Versucht, Komponenten mit ihrem preferred size von links nach rechts und dann von oben nach unten in dem Container anzuordnen Anordnung der Reihen LEFT, CENTER (Default), RIGHT Feste horizontale und vertikale Zwischenräume (padding) Default für JPanels Prof. Dr. Björn Dreher Liste Programmieren - Java 583 GridLayout Versucht, Komponenten in Zeilen und Spalten fester Größe anzuordnen Komponenten werden in der Größe an das Gitter angepasst minimum und preferred size werden ignoriert Gut für Komponenten gleicher Größe z.b. JPanels, die jeweils wieder ihren eigenen LayoutManager haben Konstruktor erhält Anzahl Zeilen und Spalten Zu viele Komponenten: Zusätzliche Spalten Eines der beiden Argumente ist 0: Layout Manager ist frei in der Anzahl Beide 0: Runtime Exception Prof. Dr. Björn Dreher Liste Programmieren - Java 584
5 BorderLayout 5 geographische Regionen NORTH, SOUTH, EAST, WEST CENTER Default für die content panes von JWindow und JFrame Objekten Maximal 5 Komponenten Passt sie in Größe an, so dass sie in constraints passen Häufig Panels mit eigenen Inhalten Überladene add() Methode mit 2. Argument für Ort der Einfügung Prof. Dr. Björn Dreher Liste Programmieren - Java 585 BorderLayout: Beispiel 1 public class Border1 extends JPanel { public Border1() { setlayout(new BorderLayout()); add( new JButton("North"), BorderLayout.NORTH); add( new JButton("South"), BorderLayout.SOUTH); add( new JButton("East"), BorderLayout.EAST); add( new JButton("West"), BorderLayout.WEST); add( new JButton("Center"), BorderLayout.CENTER); public static void main(string[] args) { JFrame frame = new JFrame("Border1"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(300, 300); frame.setlocation(200, 200); frame.setcontentpane(new Border1()); frame.setvisible(true); Prof. Dr. Björn Dreher Liste Programmieren - Java 586
6 BorderLayout: Beispiel 1 NORTH, SOUTH preferred height füllen horizontale Breite EAST, WEST preferred width füllen vertikale Höhe zwischen NORTH und SOUTH CENTER nimmt verbleibenden Raum ein Buttons werden verzerrt Prof. Dr. Björn Dreher Liste Programmieren - Java 587 BorderLayout: Beispiel 2 public class Border2 extends JPanel { public Border2() { setlayout( new BorderLayout() ); JPanel p = new JPanel(); p.add(new JButton("North")); add(p, BorderLayout.NORTH); Panels um Buttons herum p = new JPanel(); p.add(new JButton("South")); add(p, BorderLayout.SOUTH); p = new JPanel(); p.add(new JButton("East")); add(p, BorderLayout.EAST); p = new JPanel(); p.add(new JButton("West")); add(p, BorderLayout.WEST); p = new JPanel(); p.add(new JButton("Center")); add(p, BorderLayout.CENTER); Prof. Dr. Björn Dreher Liste Programmieren - Java 588
7 BorderLayout: Beispiel 2 public static void main(string[] args) { JFrame frame = new JFrame("Border2"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(300, 300); frame.setlocation(200, 200); frame.setcontentpane(new Border2()); frame.setvisible(true); Prof. Dr. Björn Dreher Liste Programmieren - Java 589 BorderLayout: Beispiel 2 Jeder Button in ein Panel JPanel: Default Layout ist FlowLayout Beachtet preferred size Übernimmt dies auch als eigenes preferred size Wird JPanel gedehnt, das beeinflusst nicht die Größe der Buttons Prof. Dr. Björn Dreher Liste Programmieren - Java 590
8 BoxLayout Spezifischer Swing Layout Manager Eine Zeile oder eine Spalte Nützlich für horizontale oder vertikale Werkzeug- oder Button-Leisten Ähnlich zu FlowLayout, aber ohne Zeilenschaltung Ein Box Container macht Verwendung von BoxLayout einfach Statische Methoden, um Boxen zu erzeugen Container horizontalbox = Box.createHorizontalBox(); Container verticalbox = Box.createVerticalBox(); horizontalbox.add(new JButton("Ok"); Weitere Elemente glue: sich anpassender freier Platz zwischen Komponenten strut: freier Platz zwischen Komponenten von fester Größe Prof. Dr. Björn Dreher Liste Programmieren - Java 591 BoxLayout: Beispiel public class Boxer { public static void main(string[] args) { JFrame frame = new JFrame("Boxer"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(250, 250); frame.setlocation(200, 200); Container box = Box.createHorizontalBox(); box.add(box.createhorizontalglue()); box.add(new JButton("In the")); box.add(box.createhorizontalglue()); box.add(new JButton("clearing")); box.add(box.createhorizontalstrut(10)); box.add(new JButton("stands")); box.add(box.createhorizontalstrut(10)); box.add(new JButton("a")); Prof. Dr. Björn Dreher Liste Programmieren - Java 592
9 BoxLayout: Beispiel (fortgesetzt) box.add(box.createhorizontalglue()); box.add(new JButton("boxer")); box.add(box.createhorizontalglue()); frame.getcontentpane().add(box, BorderLayout.CENTER); frame.pack(); frame.setvisible(true); Prof. Dr. Björn Dreher Liste Programmieren - Java 593 CardLayout Stapel von Karten Nur eine Komponente wird pro Karte dargestellt Besser: JTabbedPane add()-methode des Containers mit zwei Argumenten Weiterer Parameter mit Name der Karte Steuerung durch Methoden des Layout Managers show(): Bestimmte Karte über Namen first(), last(), next(), previous() Jede Karte enthält normalerweise ein Panel mit weiteren Komponenten darin Weiterschalten durch Ereignis in der Karte Prof. Dr. Björn Dreher Liste Programmieren - Java 594
10 CardLayout: Beispiel public class Card extends Panel { CardLayout cards = new CardLayout(); public Card() { setlayout(cards); ActionListener listener = new ActionListener() { public void actionperformed(actionevent e) { cards.next(card.this); ; JButton button = new JButton("one"); button.addactionlistener(listener); add(button, "one"); button = new JButton("two"); button.addactionlistener(listener); add(button, "two"); button = new JButton("three"); button.addactionlistener(listener); add(button, "three"); Prof. Dr. Björn Dreher Liste Programmieren - Java 595 CardLayout: Beispiel public static void main(string[] args) { JFrame frame = new JFrame("Card"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(200, 200); frame.setlocation(200, 200); frame.setcontentpane(new Card()); frame.setvisible(true); Prof. Dr. Björn Dreher Liste Programmieren - Java 596
11 11. GUI-Programmierung mit SWING Überblick: Layout Manager Einleitung Prof. Dr. Björn Dreher Liste Programmieren - Java 597 GridBagLayout Abstraktes Gitter Logische Koordinaten für Zeilen und Spalten Zeile oder Spalte so groß, wie größte Komponente Komponente kann sich über mehrere Gitterstellen erstrecken Kleinere Komponenten können innerhalb der Zelle an einer Seite verankert oder auch vergrößert werden Am einfachsten mit Hilfe eines GUI-Builders zu benutzen Prof. Dr. Björn Dreher Liste Programmieren - Java 598
12 GridBagLayout API Nur ein Konstruktor ohne Argumente Erscheinungsbild kontrolliert durch GridBagConstraints Mit jeder Komponente, die vom GridBagLayout verwaltet wird, verknüpft Öffentliche Eigenschaften: int gridx gridy: Position der Komponente im Gitter int weightx, weighty: Wie wird zusätzlicher Raum hinzugefügt int fill: Kann Komponente sich erweitern, um Raum zu füllen int gridheight, gridwidth: Wieviele Zeilen oder Spalten nimmt Komponente ein int anchor: Position der Komponente innerhalb der Gitterzelle int ipadx, ipady: Vergrößerung der Komponente in Richtung Gittergrenze Insets insets: Einfügen von Platz zwischen Komponente und Gittergrenze Prof. Dr. Björn Dreher Liste Programmieren - Java 599 GridBagLayout API Beispiel Container content = getcontentpane(); JComponent component = new JLabel("Füg mich in GrigBag ein!"); GridBagConstraints constraints = new GridBagConstraints(); constraints.gridx = 3; constraints.gridy = 5; content.add(component, constraints); Oder Constraint für Komponente nachträglich übergeben content.add(component); mygridbaglayout.setconstraints(component, constraints); Werte(!) werden übernommen, Constraints-Objekt kann wiederverwendet werden Prof. Dr. Björn Dreher Liste Programmieren - Java 600
13 GridBagLayout: Anwendung public class GridBag1 extends JPanel { GridBagConstraints constraints = new GridBagConstraints(); public GridBag1() { setlayout(new GridBagLayout()); int x, y; // Nur zur Veranschaulichung addgb(new JButton("North"), x=1, y=0); addgb(new JButton("West"), x=0, y=1); addgb(new JButton("Center"), x=1, y=1); addgb(new JButton("East"), x=2, y=1); addgb(new JButton("South"), x=1, y=2); void addgb(component component, int x, int y) { constraints.gridx = x; constraints.gridy = y; add(component, constraints); Prof. Dr. Björn Dreher Liste Programmieren - Java 601 GridBagLayout: Anwendung (fortgesetzt) public static void main(string[] args) { JFrame frame = new JFrame("GridBag1"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(225, 150); frame.setlocation(200, 200); frame.setcontentpane(new GridBag1()); frame.setvisible(true); Prof. Dr. Björn Dreher Liste Programmieren - Java 602
14 GridBagLayout fill Constraint Buttons sollen gesamten Raum füllen weightx und weighty auf gleiche Werte ungleich 0.0 fill auf BOTH (horizontal und vertikal füllen) public GridBag2() { setlayout(new GridBagLayout()); constraints.weightx = 1.0; constraints.weighty = 1.0; constraints.fill = GridBagConstraints.BOTH; int x, y; // Nur zur Veranschaulichung addgb(new JButton("North"), x=1, y=0); addgb(new JButton("West"), x=0, y=1); addgb(new JButton("Center"), x=1, y=1); addgb(new JButton("East"), x=2, y=1); addgb(new JButton("South"), x=1, y=2); Prof. Dr. Björn Dreher Liste Programmieren - Java 603 GridBagLayout fill Constraint Ergebnis: Prof. Dr. Björn Dreher Liste Programmieren - Java 604
15 Überspannen mehrerer Zeilen oder Spalten gridwidth und gridheight Attribute public GridBag3() { setlayout(new GridBagLayout()); constraints.weightx = 1.0; constraints.weighty = 1.0; constraints.fill = GridBagConstraints.BOTH; int x, y; // Nur zur Veranschaulichung constraints.gridheight = 2; // Zwei Zeilen addgb(new JButton("Eins"), x=0, y=0); constraints.gridheight = 1; // Setze zurück addgb(new JButton("Zwei"), x=1, y=0); addgb(new JButton("Drei"), x=2, y=0); constraints.gridwidth = 2; // Zwei Spalten addgb(new JButton("Vier"), x=1, y=1); Prof. Dr. Björn Dreher Liste Programmieren - Java 605 Gewichte setzen weightx und weighty Attribute public GridBag4() { setlayout(new GridBagLayout()); constraints.weighty = 1.0; constraints.fill = GridBagConstraints.BOTH; int x, y; // Nur zur Veranschaulichung constraints.weightx = 0.1; addgb(new JButton("Eins"), x=0, y=0); constraints.weightx = 0.5; addgb(new JButton("Zwei"), x=1, y=0); constraints.weightx = 1.0; addgb(new JButton("Drei"), x=2, y=0); Prof. Dr. Björn Dreher Liste Programmieren - Java 606
16 Verankern anchor Attribut Als Voreinstellung ist Komponente im Gitter zentriert Andere mögliche Werte: GridBagConstraints.NORTH, NORTHEAST,, WEST, NORTHWEST Prof. Dr. Björn Dreher Liste Programmieren - Java 607 Padding ipadx und ipady Attribute Horizontaler und vertikaler Wachstumsfaktor für Komponente In beide Richtungen angewendet public GridBag5() { setlayout(new GridBagLayout()); int x, y; // Nur zur Veranschaulichung addgb(new JButton("North"), x=1, y=0); constraints.ipadx = 25; // Füge padding hinzu constraints.ipady = 25; addgb(new JButton("West"), x=0, y=1); constraints.ipadx = 0; // Entferne padding constraints.ipady = 0; addgb(new JButton("Center"), x=1, y=1); addgb(new JButton("East"), x=2, y=1); addgb(new JButton("South"), x=1, y=2); Prof. Dr. Björn Dreher Liste Programmieren - Java 608
17 Insets Raum zwischen Rändern der Komponenten und den Rändern der Gitterzelle Insets Objekt Vier Felder: top, botton, left, right Gitterzelle Tatsächliche Größe Externe Insets Internes Padding Preferred size Prof. Dr. Björn Dreher Liste Programmieren - Java 609
GroupLayout Anmerkung
Swing Layouts Layoutmanager Ordnen Elemente eines Containers nach einem bestimmten Verfahren an Der Container erfragt bei jeder Neudarstellung bei seinem Layoutmanager, wie die Komponenten des Containers
MehrLayout Manager. Astrid Beck FHT Esslingen
Layout Manager Astrid Beck FHT Esslingen Layout Manager Layout Manager arrangieren den Inhalt eines Containers gemäß vorgegebener Regeln Layout Manager BorderLayout North, South, East, West, Center FlowLayout
MehrEreignisse (Events) in Java
Ereignisse (Events) in Java werden durch Aktionen an GUI-Komponenten ausgelöst Quelle: GUI-Komponente, die ein Ereignis als Instanz einer Event-Klasse erzeugt Beispiel: ein Button, der angeklickt wird
MehrProgrammieren II. Die Klasse JList. Vorlesung 5. Handout S. 1. Martin Schultheiß. Hochschule Darmstadt Sommersemester JList.
Programmieren II Martin Schultheiß Hochschule Darmstadt Sommersemester 2011 1 / 37 JList JTable Layout-Manager GridBagLayout 2 / 37 Die Klasse JList Die Klasse JList stellt einen Container für Auswahllisten
MehrZentrale 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
MehrJava GUI Entwicklung mit Swing
Seminarunterlage Version: 5.03 Version 5.03 vom 13. Februar 2014 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen
MehrEinführung in die Informatik: Programmierung und Software-Entwicklung, WS 15/16. Kapitel 7. Grafische Benutzeroberflächen 1
Kapitel 7 Grafische Benutzeroberflächen Grafische Benutzeroberflächen 1 Ziele Grafische Benutzeroberflächen (Graphical User Interfaces) als Anwendungsbeispiel für die objektorientierte Programmierung kennenlernen.
MehrGUI-Programmierung. Teil I. Unterlagen zum Modul OOP mit Java V by MOU2/BFH-TI. Berner Fachhochschule Technik und Informatik
GUI-Programmierung mit Java Teil I Unterlagen zum Modul OOP mit Java V 3.0 2007 by WBR1/BFH-TI 2011 by MOU2/BFH-TI GUI-Programmierung V3.0 2011 by WBR1&MOU2/BFH-TI Lernziele Die Kursteilnehmer sind in
MehrLayoutManager. Einsatz von LayoutManagern in AWT/Swing Containern. Prof. Dr. Nikolaus Wulff
LayoutManager Einsatz von LayoutManagern in AWT/Swing Containern Prof. Dr. Nikolaus Wulff Wozu LayoutManager Graphische Oberflächen müssen variabel auf Größenänderung eines Fenster reagieren. Hierzu wird
MehrEinfü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
MehrCS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)
CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Graphische Benutzerschnittstellen I GUI erzeugen Seite 1 GUI GUI: Graphical User Interface Graphische Benutzeroberfläche Seite 2
MehrObjektorientierte 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
MehrFachhochschule 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...
MehrInstitut für Programmierung und Reaktive Systeme. GUIs mit Swing. Markus Reschke
GUIs mit Swing Markus Reschke 28.08.2014 Beispiel: Ein einfaches GUI-Programm Siehe Painter.java Markus Reschke GUIs mit Swing 2 GUI Frameworks in Java AWT war das erste GUI-Framework, welches mit Java
MehrJava 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
MehrAbstract Windowing Toolkit
Abstract Windowing Toolkit import java.awt.* Package aus der java Klassenbibliothek, stellt Klassen für graphische Benutzeroberflächen bereit Die Komponenten (Button, TextField usw.) basieren auf den Implementationen
MehrVorlosung: Swing: Erstellen eines JFrames mit GridBagLayout
Hchschule Harz BS/GUI Vrlesung: FB Autmatisierung und Infrmatik Dipl.-Inf., Dipl.-Ing. (FH) M. Wilhelm BS/GUI Thema: Swing und GridBagLayut Versuchsziele Kenntnisse in der Anwendung vn: Erstellen einer
MehrIst eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt
GUI GUI = Graphical User Interface Ist eine Softwarekomponente, die dem Benutzer eines Computers die Interaktion mit der Maschine über grafische Symbole erlaubt Gute Übersicht über alle Funktionalitäten
MehrEinfü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
MehrGUI-Programmierung mit Java. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 11: GUI 1: AWT (1) GUI-Programmierung mit Java.
Universität Osnabrück 1 GUI-Programmierung mit Java 3 - Objektorientierte Programmierung in Java Vorlesung 11: GUI 1: AWT (1) SS 2004 Prof. Dr. F.M. Thiesing, FH Dortmund Alle unsere bisherigen Anwendungsbeispiele
MehrGrafische 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,
Mehr7. Architektur interaktiver Systeme
7. Architektur interaktiver Systeme 7.1 Entkopplung durch Sichten 7.2 Ereignisgesteuerter Programmablauf 7.3 Benutzungsoberflächen (Fortsetzung) Layout-Manager Definition Ein Layout-Manager ist ein Objekt,
MehrGUI Programmierung mit javax.swing
java.awt Swing Komponenten Layout Manager Ausblick GUI Programmierung mit University basierend auf Folien von Dr. Beatrice Amrhein (Bern), 19. Juni 2006 java.awt Swing Komponenten Layout Manager Ausblick
MehrGUI 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
MehrProgrammieren in Java
Programmieren in Java Vorlesung 04: Graphische Benutzerschnittstelle am Beispiel von Swing Peter Thiemann Albert-Ludwigs-Universität Freiburg, Germany SS 2013 Peter Thiemann (Univ. Freiburg) Programmieren
MehrTechniken 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
MehrProf. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik GUI-Programmierung mit Swing
Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik GUI-Programmierung mit Swing AWT und Swing Java enthält zwei Pakete zur Programmierung graphischer Oberflächen. java.awt: Das Abstract
MehrEntwicklung 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:
MehrProgrammieren II. Menü-Klassen in Java. Menüs. Menüs. Action. Dr. Klaus Höppner. GridBagLayout. Hochschule Darmstadt SS 2008
Programmieren II Menüs Dr. Klaus Höppner Action Hochschule Darmstadt SS 2008 GridBagLayout 1 / 30 2 / 30 Menüs Menü-Klassen in Java In Fenstern von grafischen Anwendungen kennt man folgende Arten von Menüs:
MehrEAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ
EAD II Übung 5 Graphische Benutzungsoberfläche mit BlueJ Graphische Benutzungsoberfläche (GUI) Fenster, das weitere Komponenten zur Darstellung und Interaktion enthält spezielle Standardbibliotheken erforderlich,
MehrNTB 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
MehrProgrammieren II. Java im Vergleich zu anderen Sprachen. Einführung: GUI. Einführung: Grafische Benutzeroberflächen. Dr.
Programmieren II Dr. Klaus Höppner Hochschule Darmstadt SS 2008 1 / 22 2 / 22 Einführung: GUI Fast alle Programme besitzen mittlerweile eine grafische Benutzeroberfläche (engl: Graphical User Interface,
MehrEinige vorgefertigte Layout-Manager:
Einige vorgefertigte Layout-Manager: FlowLayout LayoutManager GridLayout BorderLayout LayoutManager2 CardLayout GridBagLayout GridBagConstraints 945 FlowLayout: Das Default-Layout der Klasse Panel. Komponenten
Mehr11. 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
MehrHochschule 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:
MehrGrafische Benutzeroberflächen
Gilbert Beyer und Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik http://www.pst.ifi.lmu.de/lehre/wise-11-12/infoeinf WS11/12 Aufgabe Ein Benutzer soll zwei Zahlen in ein Programm
MehrZiel 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
MehrVorlesung 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
MehrGUIs 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
Mehrjcontentpane.setlayout(new BorderLayout()); // unten JPanel unten = new JPanel(); unten.setlayout( new BoxLayout(unten, BoxLayout.
04.07.2011 Lösungsvorschlag 1. Aufgabe (12 + 12 Punkte): Screendesign : im Center: Label mit Bild 3P: Panel im West mit BoxLayout und TextField, Scrollpane und TextArea 4P: Panel im East mit FlowLayout
Mehr7.1 Übersicht Geschichte von swing
Frühjahrsemester 2012 CS108 Programmier-Projekt Kapitel 7: Grafikprogrammierung mit swing H. Schuldt 7.1 Übersicht Geschichte von swing AWT hat den meisten Ansprüchen für die Grafikprogrammierung nicht
MehrJava für Computerlinguisten
Java für Computerlinguisten 5. Grafische Userinterfaces Christian Scheible Institut für Maschinelle Sprachverarbeitung 31. Juli 2009 Christian Scheible Java für Computerlinguisten 31. Juli 2009 1 / 33
Mehr13 Grafische Oberflächen , Prof. Dr. D. Ratz
13 Grafische Oberflächen 2009 2014, Prof. Dr. D. Ratz 13.1 Aufbau grafischer Oberflächen Ziel: Programme die nicht nur im Konsolenfenster laufen, sondern mit grafischer Benutzungsschnittstelle (Graphical
Mehr...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
MehrAuszug 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
MehrMensch-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
MehrObjektorientierte Programmierung
Objektorientierte Programmierung Exkurs: Graphische Benutzeroberflächen FH Braunschweig/Wolfenbüttel Sommersemester 2009 1 / 22 Gliederung I Wiederholung Klassen, Objektorientierung (Kapitel 10,11) Exkurs:
Mehr16 Zeichnen in Swing-Komponenten , Prof. Dr. D. Ratz
16 Zeichnen in Swing-Komponenten 2009 2014, Prof. Dr. D. Ratz 16.1 Grafische Darstellung von Komponenten Der Repaint-Manager sorgt für die grafische Darstellung der Komponenten Aktivierung beim erstmaligen
MehrHeute. Grafische Benutzeroberflächen (Anonyme) innere Klassen Einfache Simulationen main / ausführbare jar-files IT I - VO 11 1
Heute Grafische Benutzeroberflächen (Anonyme) innere Klassen Einfache Simulationen main / ausführbare jar-files 17.01.2017 IT I - VO 11 1 Organisatorisches Noch zwei UE und eine Wissensüberprüfung Heute
MehrFunktionale und Objekt-Orientierte Programmierkonzepte
Funktionale und Objekt-Orientierte Programmierkonzepte Prof. Marc Fischlin, Wintersemester 15/16 Kapitel 17: GUI, Threads und verschachtelte Klassen 13. Oktober 2010 Dr.Marc Fischlin Kryptosicherheit 1
MehrGrafische Benutzeroberflächen
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
MehrDHBW Karlsruhe, Angewandte Informatik Programmieren in JAVA https://www.iai.kit.edu/~javavorlesung W. Geiger, T. Schlachter, C. Schmitt, W.
Bereich: Grafische Benutzeroberflächen (UI), Events (1) Währungsumrechner (2) Package: de.dhbwka.java.exercise.ui.event Musterlösung Klasse: CurrencyCalculator package de.dhbwka.java.exercise.ui.event;
MehrJAVA 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
MehrGeschrieben von: Sonntag, den 18. September 2005 um 20:01 Uhr - Aktualisiert Donnerstag, den 01. Oktober 2009 um 23:39 Uhr
Einführung Einfache Applikationen zu denen auch dieser Java Taschenrechner gehört, lassen sich heut zu Tage relativ bequem und schnell programmieren. Die entsprechenden API's (Application Progr amming
Mehr9 Graphikfenster 9-1. Grafikfenster. Ereignisorientiertes Programmieren. Übungsaufgaben
9 Graphikfenster 9-1 Inhalt Grafikfenster Fenster Ereignisorientiertes Programmieren Komponenten Layout Übungsaufgaben Fenster Wir haben bisher rein text-basierte Programme geschrieben. Nun wollen wir
MehrJAVA Oberflächen mit Swing
JAVA Oberflächen mit Swing Grafik von http://javafx.com 159 AGENDA Grundlagen GUI Swing JavaFX 160 GRAPHISCHE BENUTZEROBERFLÄCHEN (1) AWT = Abstract Window Toolkit Verwendet die jeweiligen GUI-Komponenten
MehrWiederholung: 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
MehrJ.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
MehrExkurs: ANONYME KLASSEN. Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm
Exkurs: ANONYME KLASSEN Techniken der Programmentwicklung Prof. Dr. Wolfgang Schramm Anonyme Klassen Eigenschaften 1 Häufigste Anwendung lokaler Klassen: anonyme Definition. Klasse erhält keinen eigenen
MehrSommersemester Implementierung III: GUI und Verhalten (Teil 2)
Sommersemester 2003 Implementierung III: GUI und Verhalten (Teil 2) 26 Aufgabe 5 Implementierung III: GUI und Verhalten (Teil 2) Umfang: 1 Woche Punkte: 50 P. Als Nächstes soll die Implementierung des
MehrSwing :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
MehrEinführung in Java, Teil 6
Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Einführung in Java, Teil 6 Angepasst auf Swing von Daniel Huson Vorlesung Informatik I, 6.12.2005
MehrAnwendungen mit GUI. INE2, Mittwoch / TH561 M. Thaler, Office TG208.
Anwendungen mit GUI INE2, Mittwoch 8.00-9.35/ TH561 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was gehtes? Anwendungen meist Graphische Schnittstellen wie solche Schnittstellen
MehrProgrammieren 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"
MehrEinstieg in die Informatik mit Java
1 / 15 Einstieg in die Informatik mit Java Ereignisverwaltung und Layout-Typen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 15 1 Ereignis-Verwaltung 2 Layout-Typen GridLayout
Mehrimport java.awt.*; import java.awt.event.*; import javax.swing.*;
Swing Workshop Dieser Workshop enthält grundsätzliche Informationen über Swing und Java und regt mit einigen Beispielen und Übungen zum weiteren Erkunden dieses Themengebietes an. Kapitel 1: Das erste
MehrEinstieg 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
Mehr5. Java Swing Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006
5. Java Swing Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006 Übersicht Grundlagen der Programmierung II Einordnung
MehrMedientechnik. Übung 2 Java Swing
Medientechnik Übung 2 Java Swing Planung Nr Zeitraum Thema 1 20.04. 25.04. Bildretusche mit Gimp 2 27.04. 01.05. GUI Programmierung 3 04.05. 08.05. Model-View Controller 4 18.05. 22.05. Bildfilter 5 26.05.
MehrAbteilung 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
MehrObjektorientierte Programmierung Studiengang Medieninformatik
Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 5 12.04.2017 Was bisher geschah... Objektorientierte Programmierung Klassen und Objekte, Attribute
MehrInstitut für Programmierung und Reaktive Systeme 17. Juli Programmieren II. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 17. Juli 2015 Hinweise: Klausurtermine: Programmieren II Übungsklausur Programmieren I: 7. September
MehrInstitut für Informatik
Technische Universität München Institut für Informatik Lehrstuhl für Computer Graphik & Visualisierung WS 2009 Praktikum: Grundlagen der Programmierung Aufgabenblatt 11 Prof. R. Westermann, R. Fraedrich,
MehrAK-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
MehrGraphische Oberflächen Teil 1
Graphische Oberflächen Teil 1 AWT und Swing Grundlegender Aufbau von GUIs Graphikausgabe Layoutmanagement Ereignismodell Menus und Actions GUI Elemente Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer
MehrGUI 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
MehrUniversität Paderborn Prof. Dr. Stefan Böttcher. Kapitel 3: Java Applets
Kapitel 3: Java Applets 1 Was sind Applets? kleine in Fenstern ausführbare Programme typisch: Aufruf im Browserfenster als Teil einer HTML-Seite Anfang des umgebenden HTML-Textes
Mehr$ java awt.main A # typische Dekodierung $ java -Dtrace=all awt.main A # alle Events $ java -Dtrace=none awt.main A # keine Dekodierung
111 Copyright 1996-1998 by Axel T. Schreiner. All Rights Reserved. Button [ Applet] Beispiel A dient zum Experimentieren mit Button- und Panel-Objekten. Button stammt von Component ab, stellt einen String
MehrGrundlagen 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
MehrJava 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
MehrPunkte. Teil 1. Teil 2. Summe. 1. Zeigen Sie, dass der untenstehende Suchbaum die AVL-Bedingung verletzt und überführen Sie ihn in einen AVL-Baum.
Hochschule der Medien Prof Uwe Schulz 1 Februar 2007 Stuttgart Klausur Informatik 2, EDV-Nr 40303/42022 Seite 1 von 2 Name: Matr Nr: Teil 1: Keine Hilfsmittel Bearbeitungszeit: 20 Minuten Teil 1 Teil 2
Mehr2A 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/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();
Bereich: Grafische Benutzeroberflächen (UI), Events (2) Editor Package: de.dhbwka.java.exercise.ui.editor Klasse: Editor Aufgabenstellung: Schreiben Sie einen kleinen Texteditor mit Swing! Keine Panik,
MehrGUI-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
MehrInstitut für Programmierung und Reaktive Systeme 7. Juli Programmieren II. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 7. Juli 2017 Hinweise: Klausurtermine: Programmieren II Übungsklausur Programmieren I: 28. August
MehrSwing : Komponeneten I (Teil 1) Was ist Swing?
Was ist Swing? 1 Unterschied zu AWT (Abstract window Toolkit) Zusätzliche Komponenten von Swing,die zu Oberflächenerzeugung genutzt werden können: Keyboard Accelerators, also Tastenkombination zur Steuerung
MehrGraphische 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
MehrSession 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
MehrSoftwarepraktikum: 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
MehrVorlesung Programmieren
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
MehrGraphical User Interfaces
Graphical User Interfaces SEP 184 Toolkits es gibt verschiedene Toolkits (= Sammlungen von Klassen, Anbindungen an Betriebssystem, etc.) für grafische Oberflächen Abstract Windows Toolkit (AWT) Swing Standard
MehrHauptklausur: PRGII MD
Hauptklausur: PRGII MD Aufgabe 1 (18 Punkte) Betrachten Sie folgenden binären Suchbaum. a) Geben Sie die Knoten des Baumes in postorder aus. anne, helmut, harald, bert, arno, manuel, uwe, thorsten, sebastian,
MehrGUI-Programmierung - Einführung
GUI-Programmierung - Einführung Kernkonzepte Komponenten (components) ereignisgesteuerte Programmierung (event driven programming) Layout 1 Frames and Components windows (frames) menus labels checkboxes
MehrVorlesung Programmieren
Vorlesung 14.12.2006 Wintersemester 2006/2007 Computerlinguistik, Campus DU Überblick Seite 2 Entwicklung interaktiver Benutzeroberflächen Ereignisbasierte Programmierung, Listener AWT, Swing Graphical
MehrVorlesung 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
MehrObjektorientierte Programmierung Studiengang Medieninformatik
Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 1 15.03.2017 Objektorientierte Programmierung (Studiengang Medieninformatik) Form: Prüfung:
MehrEin 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
MehrGraphische Benutzungsoberflächen mit Java. Einführung in NetBeans
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
Mehr