Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

DVG2 - 091 A bstract W indow T oolkit. DVG2 - 092 4 Als standardisierte portable Grafikschnittstelle existiert in JAVA das Package AWT - Abstract Window.

Ähnliche Präsentationen


Präsentation zum Thema: "DVG2 - 091 A bstract W indow T oolkit. DVG2 - 092 4 Als standardisierte portable Grafikschnittstelle existiert in JAVA das Package AWT - Abstract Window."—  Präsentation transkript:

1 DVG2 - 091 A bstract W indow T oolkit

2 DVG2 - 092 4 Als standardisierte portable Grafikschnittstelle existiert in JAVA das Package AWT - Abstract Window Toolkit. 4 AWT enthält Klassen zur Programmierung allgemeiner Grafikelemente, z.B.: –Fenster –Menüs, Buttons –Druckeranschluß –Drag and Drop –Mausanschluß –Grafikimport, -export –Farben –Fonts –Geometrieobjekte

3 DVG2 - 093 Component-Klassen Component ButtonCanvasCheckboxChoice Container LabelListScrollbar TextComponent PanelScrollPaneWindowTextAreaTextField AppletFrameDialog FileDialog

4 DVG2 - 094 Die Klasse Component Eine Component ist ein Objekt, das eine graphische Darstellung besitzt, das auf dem Bildschirm angezeigt werden kann und das mit dem Nutzer interagieren kann. Z.B.: –Buttons –Checkboxen –Scrollbars u.s.w. Objekte der Klasse Component werden kaum direkt verwendet, sondern nur als Instanziierungen abgeleiteter Klassen. 4 Die Methoden und Attribute werden an alle abgeleiteten Klassen vererbt.

5 DVG2 - 095 Wichtige Methoden von Component public Color getBackground() bestimmt die Hintergrundfarbe public void setBackground (Color c) setzt die Hintergrundfarbe public Color getForeground() bestimmt die Vordergrundfarbe public void setForeground (Color c) setzt die Vordergrundfarbe public Font getFont() bestimmt den aktuellen Font public void setFont (Font f) setzt den aktuellen Font

6 DVG2 - 096 Die Klasse Color 4 Beschreibt Farben in verschiedenen Farbmodellen 4 Konstruktoren –Color (float r, float g, float b) 0.0 <= r, g, b <= 1.0 –Color (int r, int g, int b) 0 <= r, g, b <= 255 Attribute static Color black, blue, cyan, darkGray, gray, green, lightGray, magenta, orange, pink, red,white, yellow 4 Methoden –int getR(), int getG(), int getB() bestimmt die Farbanteile –Color brighter(), Color darker() erzeugt eine etwas hellere bzw. dunklere Farbe

7 DVG2 - 097 Die Klasse Font 4 Beschreibt Schriftarten und -eigenschaften Konstruktor Font (String name, int style, int size) –name : "Dialog", "DialogInput", "Monospaced", "Serif", "SansSerif", "Symbol" –style : PLAIN, BOLD, ITALIC, BOLD|ITALIC –size : Schriftgröße

8 DVG2 - 098 Die Klasse Container 4 Beschreibt AWT-Objekte, die andere Objekte enthalten können. Wird wie Component selten direkt benutzt. 4 Definiert Methoden zum Verwalten von in dem Container enthaltenen anderen AWT-Objekten. –public Component add (Component comp) –public void remove(Component comp) –public int getComponentCount() –public Component [] getComponents() –public Component getComponentAt (int x, int y) Methoden zum Verwalten des Layouts –public void setLayout (LayoutManager mgr) –public LayoutManager getLayout() –public Insets getInsets()

9 DVG2 - 099 4 Methoden zum Zeichnen des Inhaltes –public void paint (Graphics g) –public void update (Graphics g)

10 DVG2 - 0910 Interface LayoutManager 4 Beschreibt das Layout eines Containers 4 Implementierungen sind –GridLayout –FlowLayout –CardLayout –GridbagLayout –BorderLayout

11 DVG2 - 0911 Die Klasse Insets 4 Beschreibt die Breiten der Ränder eines Containers. Konstruktor Insets(int top, int left, int bottom, int right) Attribute public int top public int left public int bottom public int right

12 DVG2 - 0912 Methoden der Klasse Graphics 4 public void drawString(String str, int ix, int iy) –zeichnet den Text str an die Position (ix,iy) 4 public void drawLine(int ix1, int iy1, int ix2, int iy2) –zeichnet eine Linie von (ix1,iy1) nach (ix2,iy2) 4 public void drawRect(int ix, int iy, int ib, int ih) –zeichnet ein Rechteck mit der linken oberen Ecke (ix,iy) und der Breite ib und der Höhe ih 4 public void fillRect(int ix, int iy, int ib, int ih) –zeichnet ein ausgefülltes Rechteck

13 DVG2 - 0913 4 public void drawOval(int ix, int iy, int ib, int ih) –zeichnet ein Oval innerhalb des beschriebenen Rechtecks 4 public void fillOval(int ix, int iy, int ib, int ih) –zeichnet ein ausgefülltes Oval 4 public void drawArc(int ix, int iy, int ib, int ih, int start, int arc) –zeichnet einen Auschnitt eines Ovals innerhalb des beschriebenen Rechtecks mit dem Startwinkel start und dem Öffnungswinkel arc 4 public void fillArc(int ix, int iy, int ib, int ih, int start, int arc) –zeichnet einen ausgefüllten Auschnitt eines Ovals

14 DVG2 - 0914 4 public void drawPolygon(int[] ix, int[] iy, int n) –zeichnet ein geschlossenes Polygon mit den Ecken (ix[i],iy[i]) für i=0...n-1 4 public void fillPolygon(int[] ix, int[] iy, int n) –zeichnet ein geschlossenes ausgefülltes Polygon 4 public void drawPolyline(int[] ix, int[] iy, int n) –zeichnet einen Polygonzug mit den Ecken (ix[i],iy[i]) für i=0...n-1

15 DVG2 - 0915 Die Klasse Window Window -Objekte Windows auf der obersten Hirarchie-Stufe. Windows enthalten keinen Rand und kein Menü. Windows werden üblicherweise nicht selbständig erzeugt. 4 Methoden –public void dispose() löschen des Windows und aller Subkomponenten –public void pack() verkleinert das Window derartig, daß alle Komponenten hineinpassen –public void show() macht das Window sichtbar –public void toBack() legt das Window nach hinten –public void toFront() legt das Window nach vorn

16 DVG2 - 0916 Die Klasse Frame Frame ist ein komplettes Fenster mit Titel und Rand. 4 Konstruktoren –Frame() erzeugt Frame ohne Titel –Frame (String title) erzeugt Frame mit Titel 4 Methoden –public void setMenuBar(MenuBar mb) definiert einen Menübalken am Kopf des Frames –public void setResizable(boolean resizable) bestimmt, ob das Frame in der Größe verändert werden kann

17 DVG2 - 0917 Die Klasse Label 4 Erzeugt ein Label mit oder ohne Text. 4 Konstruktoren –Label() erzeugt Label ohne Text –Label(String text) erzeugt Label mit Text –Label(String text, int alignment) erzeugt Label mit Text und legt die Ausrichtung des Textes fest. alignment = Label.LEFT, Label.RIGHT, Label.CENTER 4 Methoden –public String getText() –public void setText(String text)

18 DVG2 - 0918 Die Klasse Button 4 Erzeugt eine Schaltfläche. Organisiert die Reaktion auf Betätigung der Schaltfläche. 4 Konstruktoren –Button() erzeugt Schaltfläche ohne Beschriftung –Button(String label) erzeugt Schaltfläche mit Beschriftung 4 Methoden –public String getLabel() –public void setLabel(String label) –public String getActionCommand() –public void setActionCommand (String command) lesen bzw. setzen das Kommando, das beim Betätigen der Schaltfläche an den ActionListener gesendet wird

19 DVG2 - 0919 public void addActionListener(ActionListener l) Hinzufügen eines ActionListeners public void removeActionListener(ActionListener l) Löschen eines ActionListeners

20 DVG2 - 0920 Beispiel import java.awt.*; public class t { public static void main (String [] args) { tFrame f = new tFrame("AWT mit Buttons"); f.setBounds(200,100,400,300); f.setBackground(Color.yellow); f.show(); } }

21 DVG2 - 0921 import java.awt.*; public class tFrame extends Frame { tFrame(String title) { super(title); setLayout(new GridLayout(2,1)); Button b1 = new Button(); b1.setBackground(Color.cyan); add (b1); Button b2 = new Button("Button"); b2.setBackground(Color.blue); add (b2); } }

22 DVG2 - 0922 Das Interface ActionListener Implementierungen dieses Interfaces, dienen der Behandlung von ActionEvents. Diese werden ausgelöst, wenn: –ein MenuItem ausgewählt wird, –ein Button betätigt wird –in einem TextField Return gedrückt wird –ein Feld in einer List ausgewählt wird 4 Es muß eine Methode implementiert werden: –public void actionPerformed(ActionEvent e) diese Methode wird aufgerufen, wenn oben genannte Ereignisse eintreten

23 DVG2 - 0923 Die Klasse ActionEvent 4 Wird ausgelöst von –MenuItem –Button –TextField –List 4 Methoden –public String paramString() liefert eine Zeichenkette, die die wesentlichen Informationen über das eingetretene Ereignis enthält –public String getActionCommand() liefert die Zeichenkette, die standardmäßig oder mit setActionCommand(String command) als Kommandozeichenkette gesetzt wurde.

24 DVG2 - 0924 –public int getModifiers() gibt die Tastencodes der gedrückten Modifizierer aus : SHIFT_MASK CTRL_MASK META_MASK ALT_MASK

25 DVG2 - 0925 Beispiel import java.awt.event.*; public class tAL implements ActionListener { public void actionPerformed(ActionEvent e) { System.out.println( "e.getActionCommand() = "+e.getActionCommand()); System.out.println( "e.getModifiers() = "+e.getModifiers()); System.out.println( "e.paramString() = "+e.paramString()); } }

26 DVG2 - 0926 import java.awt.*; import java.awt.event.*; public class tFrame extends Frame { tFrame(String title) {... ActionListener al = new tAL(); b1.setActionCommand( "unbeschriftete Schaltflaeche"); b1.addActionListener(al); b2.addActionListener(al); } }

27 DVG2 - 0927 Alles zusammen import java.awt.*; import java.awt.event.*; public class tAlles extends Frame implements ActionListener { public static void main (String [] args) { Frame f = new tAlles("AWT mit Buttons"); f.setBounds(200,100,400,300); f.setBackground(Color.yellow); f.show(); }

28 DVG2 - 0928 Alles zusammen tAlles(String title) { super(title); setLayout(new GridLayout(2,1)); Button b1 = new Button(); b1.setBackground(Color.cyan); add (b1); Button b2 = new Button("Button"); b2.setBackground(Color.blue); add (b2); b1.setActionCommand( "unbeschriftete Schaltflaeche"); b1.addActionListener(this); b2.addActionListener(this); }

29 DVG2 - 0929 Alles zusammen public void actionPerformed(ActionEvent e) { System.out.println( "e.getActionCommand() = "+e.getActionCommand()); System.out.println( "e.getModifiers() = "+e.getModifiers()); System.out.println( "e.paramString() = "+e.paramString()); } }

30 DVG2 - 0930 Die Klasse Canvas Die Klasse Canvas beschreibt leere Bereiche des Fensters, in denen graphische Objekte (Linien, Rechtecke, Ellipsen u.s.w.) plaziert werden können. Konstruktor Canvas() erzeugt ein neues Canvas Methoden public void paint(Graphics g) zeichnet die Graphiken des Canvas neu

31 DVG2 - 0931 Beispiel public class tFrame extends Frame { tFrame(String title) { super(title); setLayout(new GridLayout(2,1)); Canvas c = new tCanvas(); c.setBackground(Color.cyan); add (c); Button b = new Button("Button"); b.setBackground(Color.blue); add (b); } }

32 DVG2 - 0932 import java.awt.*; public class tCanvas extends Canvas { public void paint(Graphics g) { g.drawLine(10,70,90,20); g.drawString("Das ist ein Text",100,50); g.drawString("g.drawLine(10,70,90,20)",300,50); g.drawString( "g.drawString(\"Das ist ein Text\",100,50)",300,70);... } }

33 DVG2 - 0933 Die Klasse Checkbox 4 Erzeugt Auswahlknöpfe 4 Konstruktoren –Checkbox() Knopf ohne Beschriftung –Checkbox(String label) Knopf mit Beschriftung –Checkbox(String label, boolean state) Knopf mit Beschriftung mit angegebenen Status: state==true heißt Knopf ist gedrückt –Checkbox(String label, boolean state, CheckboxGroup group) Knopf mit Beschriftung mit angegebenen Status, sowie Einsortierung in eine Checkbox-Gruppe

34 DVG2 - 0934 4 Methoden –public String getLabel() –public void setLabel(String label) –public boolean getState() –public void setState (boolean state) –public CheckboxGroup getCheckboxGroup() –public void setCheckboxGroup (CheckboxGroup group) –public void addItemListener(ItemListener l) fügt einen ItemListener hinzu –public void removeItemListener(ItemListener l) löscht einen ItemListener

35 DVG2 - 0935 Die Klasse CheckboxGroup 4 Dient der Gruppierung von Checkboxen zu Radiobuttons. Konstruktor CheckboxGroup() 4 Methoden –public Checkbox getSelectedCheckbox() –public void setSelectedCheckbox(Checkbox box)

36 DVG2 - 0936 Beispiel tFrame(String title) { super(title); setLayout(new GridLayout(2,3)); Checkbox cb11 = new Checkbox("cb11",true); add (cb11); Checkbox cb12 = new Checkbox("cb12"); add (cb12); Checkbox cb13 = new Checkbox("cb13",true); add (cb13); CheckboxGroup cbg = new CheckboxGroup(); Checkbox cb21 = new Checkbox("cb21",true,cbg); add (cb21); Checkbox cb22 = new Checkbox("cb22",false,cbg); add (cb22); Checkbox cb23 = new Checkbox("cb23",false,cbg); add (cb23); }

37 DVG2 - 0937 Das Interface ItemListener 4 Implementierungen von ItemListener dienen der Behandlung von ItemEvents. Diese werden erzeugt von: –Checkbox –Choice –CheckboxMenuItem –List –ItemSelectable Es muß eine Methode implementiert werden: public void itemStateChanged(ItemEvent e)

38 DVG2 - 0938 Die Klasse ItemEvent 4 Methoden –public Object getItem() gibt das Object aus, das dieses Ereignis ausgelöst hat –public int getStateChange() gibt den neuen Status des Objectes aus: SELECTED oder DESELECTED –public String paramString() liefert eine Zeichenkette, die die wesentlichen Informationen über das eingetretene Ereignis enthält

39 DVG2 - 0939 Beispiel tFrame(String title) { super(title); setLayout(new GridLayout(2,3));... ItemListener il = new tIL(); cb11.addItemListener(il); cb12.addItemListener(il); cb13.addItemListener(il); cb21.addItemListener(il); cb22.addItemListener(il); cb23.addItemListener(il); }

40 DVG2 - 0940 MenuComponent-Klassen MenuComponent MenuItemMenuBar CheckboxMenuItemMenu PopupMenu


Herunterladen ppt "DVG2 - 091 A bstract W indow T oolkit. DVG2 - 092 4 Als standardisierte portable Grafikschnittstelle existiert in JAVA das Package AWT - Abstract Window."

Ähnliche Präsentationen


Google-Anzeigen