Programmieren mit Swing



Ähnliche Dokumente
Zentrale Objekte zur Programmierung graphischer Benutzeroberflächen (GUI)

Java GUI Entwicklung mit Swing

Swing Lernen am Code Teil 1

GUI Programmierung mit javax.swing

...erinnern Sie sich? oopjs4b / kwhbkd4r

Universität VL 13 VL 13 GUI-Programmierung mit Swing Osnabrück Informatik B - Objektorientierte Programmierung in Java Vorlesung 13: GUI 3: Swing

Kap. 36. SWING: Menüs. und weitere SWING-Container. Seán Dempsey

Swing Grundlagen. Andre Eichmann

Einführung in Swing. Graphical User Interface

Java I Vorlesung 11 Graphische Oberflächen mit Swing

GUI. Programmiermethodik. Eva Zangerle Universität Innsbruck

Ausgewählte Implementierungsprobleme

Objektorientierte Software-Entwicklung

Kap. 35 Swing: Grundlagen Kap Swing: Hauptfenster

GUI Programmierung mit JAVA Swing

Einstieg in die Informatik mit Java

NTB Druckdatum:

JAVA Oberflächen mit Swing

AWT. Einfache AWT-Anwendung. Swing. Vorlesung 1. Handout S. 2. import java. awt. * ;

Grundkurs Programmieren in Java

GUI-Programmierung mit Java-Swing

Grundkurs Programmieren in Java

Objektorientierte Programmierung

JAVA Oberflächen mit Swing

Einführung in GUI-Programmierung. javax.swing

Grafische Benutzungsschnittstellen (GUIs) mit Swing

Kapitel X - Grafische Benutzeroberflächen mit Java und Swing

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

Javakurs für Fortgeschrittene

Objektorientiertes Programmieren. Übungsblatt 5

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

und mein Button JButton

Tutorial04: Swing: Erstellen eines JFrames mit einem JSplitPane

Swing :Komponenten I (Teil 2)

Grafische Benutzungsschnittstellen (GUIs) mit Swing

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

GUI Programmierung in Java

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

Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum

Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum. Rückblick Themen Erste GUI-Anwendung Praktikum

Java Swing in Theorie und Praxis

Swing2JavaFX - Migrationsstrategien

> GUI Programmierung in Java Teil 2

Universität VL 13 VL 13 GUI-Programmierung mit Swing Osnabrück Informatik B - Objektorientierte Programmierung in Java Vorlesung 13:

Inhaltsverzeichnis. Fritz Jobst. Programmieren in Java ISBN: Weitere Informationen oder Bestellungen unter

Objektorientierte Softwareentwicklung

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

Mensch-Maschine-Interaktion

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

Grundlagen der Programmierung APPLETS

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

Sybase Central Dokumentation Aktivierung der Monitoringfunktion

11. GUI-Programmierung mit SWING Überblick

JButton, JCheckBox, JRadioButton. Programmieren II. Vorlesung 7. Handout S. 1. Dr. Klaus Höppner. Hochschule Darmstadt Sommersemester 2009.

Liste Programmieren Java Überblick

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

Softwarepraktikum: Enigma

Swing. Contents. Pierre Fierz. 1 Model-View-Controller (MVC) Model-View-Controller (MVC) 2 Swing die Root-Container Hierarchie

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

GUI-Programmierung in Java

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

Java styleguide java styleguide

Das Model View Controller (MVC) Konzept

.* java.awt.* YOU ARE HERE. Graphische Benutzungsoberflächen. GUI-Bibliotheken in Java: JFC. Unterschied AWT - Swing

GRAFISCHE BENUTZERSCHNITTSTELLEN

Das Interface ÁØ ÑÄ Ø Ò Ö verlangt die Implementierung

Universität Karlsruhe (TH) Kapitel X Grafische Benutzeroberflächen mit Java und Swing

Java Swing. Einführung in die Grafikprogrammierung mit GUI PROGRAMMIERUNG MIT SWING

Techniken der Projektentwicklung

Programmieren in Java

2. Programmierung von Benutzungsschnittstellen

Kapitel 11: Grafische Benutzeroberflächen mit Swing

Einführung in GUI-Programmierung. javax.swing

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

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

Transkript:

Jürgen Schlierf Rudolf Weber Programmieren mit Swing Einfuhrung in die Programmierung mit den Swing-Klassen in Java 2 HANSER Carl Hanser Verlag München Wien

Inhaltsverzeichnis 1 Einleitung 1 1.1 Von Java bis Swing? 1 1.2 Wer sind Sie? 1 1.3 Was dieses Buch nicht ist 2 1.4 Die Gliederung dieses Buches 2 1.5 Konventionen 2 1.6 Zeit, anzufangen 4 2 Die Begleit-CD zu diesem Buch 5 2.1 Entwicklungsumgebung 5 2.2 Dokumentation 5 2.3 Browser 5 2.4 Tools 6 2.5 Installation 6 3 Erweiterungen für Java 2 7 3.1 Innere Klassen 7 3.2 Anonyme Klassen 8 3.3 Adapterklassen 9 3.4 Anonyme Adapterklassen 11 3.5 Weitere Neuerungen in Java 2 11 4 Ereignisse 15 4.1 Ereignismodell 1.1 15 4.2 Anwendung der Ereignissteuerung 16 4.3 Standardereignisse des AWT 21 4.3.1 ActionEvent 22 4.3.2 AdjustmentEvent 23 4.3.3 ComponentEvent 24 4.3.4 ContainerEvent 25 4.3.5 FocusEvent 25 4.3.6 InputEvent 26

VIII Inhaltsverzeichnis 4.3.7 ItemEvent 27 4.3.8 KeyEvent 27 4.3.9 MouseEvent 28 4.3.10 PaintEvent 30 4.3.11 TextEvent 30 4.3.12 WindowEvent 31 4.4 Swing-Ereignisse 32 4.4.1 AncestorEvent 33 4.4.2 CaretEvent 34 4.4.3 ChangeEvent 34 4.4.4 DocumentEvent 35 4.4.5 HyperlinkEvent 36 4.4.6 InternalFrameEvent 36 4.4.7 ListDataEvent 37 4.4.8 ListSelectionEvent 38 4.4.9 MenuEvent 38 4.4.10 PopupMenuEvent 39 4.4.11 TableColumnModelEvent 39 4.4.12 TableModelEvent 40 4.4.13 TreeExpansionEvent 41 4.4.14 TreeModelEvent 42 4.4.15 UndoableEditEvent 43 5 Serialisieren von Objekten 45 5.1 Ein- und Ausgabeströme in Java 45 5.2 Schreiben von Objekten 46 5.3 Lesen von Objekten 47 6 JavaBeans 49 6.1 Eine Einführung in JavaBeans 49 6.2 Architektur von JavaBeans 49 6.2.1 Events 50 6.2.2 Properties 50 6.2.3 Methoden 50 6.2.4 Persistence 50 6.3 Vorteile von JavaBeans 51 6.4 Die erste Bean-Komponente 51 6.5 JavaBeans und Events 52 6.5.1 Events 52 6.5.2 Das EventObject 53 6.5.3 Der EventListener 53 6.5.4 Nachrichtenquelle 54 6.6 Eigenschaften von JavaBeans 55 6.6.1 Simple Properties 55 6.6.2 Indexed Properties 56 6.7 Bound Properties 57

Inhaltsverzeichnis IX 6.8 Constraint Properties 58 6.9 Beanlnfo 59 6.10 Introspection 59 6.10.1 Events 60 6.10.2 Properties 60 6.10.3 Methods 60 6.11 JavaBeans in der Designphase 62 6.11.1 Editoren für Eigenschaften 62 6.11.2 Eigene Editoren 62 7 Layout Management 65 7.1 LayoutManager 66 7.2 LayoutManager2 67 7.3 FlowLayout 67 7.4 BorderLayout 68 7.5 GridLayout 69 7.6 GridBagLayout 70 7.7 CardLayout 74 7.8 BoxLayout 76 7.9 ScrollPaneLayout 78 7.10 Absolute Positionierung 81 8 Basiskomponenten 83 8.1 JComponent 83 8.2 JPanel 86 8.3 Imagelcon 87 8.4 JLabel 88 8.5 JToolTip 90 9 Rahmen 91 9.1 AbstractBorder 91 9.2 BevelBorder 91 9.3 SoftBevelBorder 92 9.4 CompoundBorder 92 9.5 EmptyBorder 92 9.6 EtchedBorder 92 9.7 LineBorder 92 9.8 MatteBorder 93 9.9 TitledBorder 93 9.10 BorderFactory 93 10 Buttons 97 10.1 AbstractButton 98 10.2 JButton 99 10.3 JCheckBox 102 10.4 JRadioButton & ButtonGroup 103 10.5 JToggleButton 105

X Inhaltsverzeichnis 11 Menüs 107 11.1 Pull-Down-Menu 108 11.2 JMenuBar 108 11.3 JMenu 108 11.4 JMenuItem 109 11.5 JCheckBoxMenuItem 109 11.6 JRadioButtonMenuItem 109 11.7 JSeparator 110 11.8 Kontextmenü (JPopupMenu) 113 11.9 Werkzeugleiste (JToolBar) 116 12 Auswahlmöglichkeiten 119 12.1 JComboBox 119 12.2 JList 121 13 Analoge Komponenten 125 13.1 JScrollBar 125 13.2 JSlider 126 13.3 JProgressBar 130 14 Fenster und Dialoge 133 14.1 RootPane (JRootPane) 134 14.1.1 GlassPane 135 14.1.2 LayeredPane (JLayeredPane) 135 14.1.3 ContentPane 137 14.1.4 Optionale Menüleiste (JMenuBar) 137 14.2 JFrame 137 14.3 Internal Frames (JIntemalFrame & JDesktopPane) 138 14.4 JDialog 143 14.5 JOptionPane 145 14.6 Spezialdialoge 152 14.6.1 JFileChooser 153 14.6.2 JColorChooser 157 15 Textkomponenten 159 15.1 JTextComponent 160 15.2 JTextField 160 15.3 JPasswordField 162 15.4 JTextArea 163 15.5 JTextPane 164 16 Registerkarten und Window-Splitter 167 16.1 JTabbedPane 167 16.2 JSplitPane 170 17 Model-View-Controller 173 17.1 Swing und MVC 174 17.2 JTree 177

17.2.1 TreeNode 177 17.2.2 MutableTreeNode 177 17.2.3 DefaultMutableTreeNode 178 17.2.4 TreeModel 178 17.2.5 TreeSelectionModel 179 17.2.6 TreeCellRenderer 179 17.3 Drucken 181 17.3.1 Drucken einer Swing-Komponente 182 17.3.2 Drucken mehrerer Seiten 183 17.4 Look & Feel 184 17.5 Ändern des Look & Feel 186 17.5.1 Selbstdefinierte Themen unter Metal Look & Feel 188 17.6 Das eigene Look & Feel 193 17.6.1 Ändern des Look & Feel 193 17.6.2 Die ButtonUI-Klasse 194 17.6.3 Die eigene Listener-Klasse 198 17.6.4 Die eigene Border-Klasse 200 17.6.5 Das Beispielprogramm 201 17.7 JList & JComboBox 202 17.7.1 ListModel 203 17.7.2 ListSelectionModel 206 Tabellen 207 18.1 Erzeugung einer einfachen Tabelle 207 18.2 Datenmodell einer Tabelle 209 18.3 Ändern der Spaltenbreiten 211 18.4 Zelleneditoren und Renderer 212 18.4.1 Definition neuer Zellenrenderer 212 18.4.2 Definition neuer Zelleneditoren 213 Das Dokumentensystem 217 19.1 Implementierung eines Dokuments 218 19.1.1 AbstracfDocument 218 19.1.2 PlainDocument 218 19.1.3 DefaultStyledDocument 218 19.2 Verwendungeines Dokuments 219 19.3 Änderungen in Dokumenten (DocumentListener) 220 19.4 Textaktionen 220 19.5 Tastaturbefehle 221 19.6 Beispiel: Multipad 222 19.6.1 Menüs 223 19.6.2 MultipadFrame: Serialisieren 223 19.6.3 MultipadFrame: Einfügen von Bildern 224 19.6.4 Filter für den File-Dialog 224 19.6.5 Umschalten des Look & Feel 226 XI

i XII Inhaltsverzeichnis 20 Links im World Wide Web 227 21 Index 229