1 / 19

Programmieren mit JAVA

Programmieren mit JAVA. Teil VI. Zusammenfassung. Applikation vs. Applet objektorientierte Programmierung Sprachbestandteile AWT. Erzeugen einer grafischen Benutzungsoberfläche. bis JDK 1.1 per AWT seit JAVA 2 per JFC/Swing JFC ist die Abkürzung für Java Foundation Classes

devin-orr
Download Presentation

Programmieren mit JAVA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programmieren mit JAVA Teil VI

  2. Zusammenfassung • Applikation vs. Applet • objektorientierte Programmierung • Sprachbestandteile • AWT

  3. Erzeugen einer grafischen Benutzungsoberfläche • bis JDK 1.1 per AWT • seit JAVA 2 per JFC/Swing • JFC ist die Abkürzung für Java Foundation Classes • Sammlung von Klassen speziell für den Aufbau von Benutzungsoberflächen • erstmals vorgestellt 1997

  4. Features der JFC • The Swing Components • Pluggable Look and Feel Support • Accessibility API • Java 2D API (Java 2 Platform only) • Drag and Drop Support (Java 2 Platform only)

  5. Warum Swing ... ... und nicht AWT? • Swing benutzt keinen native code!! • Swing Button und Labels können auch Bilder anstelle von oder zusätzlich zu Text darstellen. • Swing Komponenten müssen nicht rechteckig sein. Buttons können z.B. rund sein. • Ein einfacher Zugriff auf Bildschirmelemente erlaubt z.B. einer Braille Anzeige das Auslesen einer Textbox oder der Beschriftung eines Buttons oder Labels.

  6. Eine einfache Swing Anwendung import javax.swing.*; import java.awt.*; public class HelloSwingApplet extends JApplet { public void init() { JLabel label = new JLabel("You are successfully running a Swing applet!"); label.setHorizontalAlignment(JLabel.CENTER); label.setBorder(BorderFactory.createMatteBorder(1,1,2,2,Color.black)); getContentPane().add(label, BorderLayout.CENTER); } }

  7. Top Level Container Dialog Frame

  8. allgemein nutzbare Komponenten Panel Toolbar Scroll pane Split pane Tabbed pane

  9. spezielle Container Internal frame Layered pane Root pane

  10. Dialogelemente • Schaltflächen • Label • Checkboxen (Kontrollkästchen) • Radiobutton (Optionsfelder) • Auswahlmenüs • Listenfelder • Textbereiche und Textfelder • Schieber und Bildlaufleisten • eigene Dialogelemente

  11. allgemeine Dialogelemente Buttons Combo box List Menu Slider Textfield

  12. unveränderbare Informationsanzeigen Label Progress bar Tool tip

  13. editierbare Anzeigenformatierter Informationen Color chooser File chooser Table Text Tree

  14. Ereignis Behandlung(Event Handling) Aktion, die ein Ereignis auslöst Listener Typ User klickt auf einen Button, drückt Returnwährend er in ein Textfeld schreibt oder ActionListenerwählt einen Menüeintrag aus User schliesst einen frame (main window) WindowListener User drückt eine Maustaste während sich MouseListenerder Cursor über einer Komponente befindet User bewegt die Maus über eine MouseMotionListenerKomponente Komponente wird sichtbar ComponentListener Komponente erhält den Tastatur Fokus FocusListener Tabellen- oder Listenauswhl ändert sich ListSelectionListener

  15. Ereignis Behandlung II Mehrere listener können sich registrieren, um bei Ereignissen von einem bestimmten Typ und einer bestimmten Quelle benach-richtigt zu werden.

  16. Implementierung derEreignis Behandlung Jeder Event Handler benötigt 3 Codestücke: In der Deklaration für die Event Handler Klasse Code, der spezifiziert, dass die Klasse entweder ein Listener Interface implementiert oder von einer Klasse erbt, die das Listener Interface implementiert hat. Zum Beispiel: public class MyClass implements ActionListener { Code, der eine Instanz des Event Handlers als Listener für eine oder mehrere Komponenten registriert. Zum Beispiel: someComponent.addActionListener(instanceOfMyClass);

  17. Implementierung derEreignis Behandlung II Code, der eine Methode des Listener Interfaces implementiert. Zum Beispiel: public void actionPerformed(ActionEvent e) { ...//code that reacts to the action... }

  18. Ereignis BehandlungEin Beispiel JButton button = new JButton("I'm a Swing button!"); button.setMnemonic(KeyEvent.VK_I); button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { numClicks++; label.setText(labelPrefix + numClicks); } });

More Related