Informatik/Java/Grafische Oberfläche/GUI/Ereignis Button
Button
Checkbox
Choice
List
Scrollbar TextField
TextArea
MouseEvent
KeyEvent
FocusEvent
ChangeOfPanel
PanelPaint

Button1

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AButton1 extends Applet {
  int na, nb;
  Button a = new Button("A");
  Button b = new Button("B");
  Label label = new Label(na+"xA "+nb+"xB  ");

  class ButtonA_Listener implements ActionListener{
    public void actionPerformed(ActionEvent e) {
      na++;
      label.setText(na+"xA "+nb+"xB");
    }
  }
    
  class ButtonB_Listener implements ActionListener{
    public void actionPerformed(ActionEvent e) {
      nb++;
      label.setText(na+"xA "+nb+"xB");
    }
  }
    
  public void init() {
    add(a);
    add(b);
    a.addActionListener(new ButtonA_Listener());
    b.addActionListener(new ButtonB_Listener());
    add(label);
  }
}

pict1 (8K)

Button2

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AButton2 extends Applet {
  TextArea ta  = new TextArea (
    "",4,10,TextArea.SCROLLBARS_NONE
  );
    
  Button b     = new Button("Zeichen zählen");
  TextField tf = new TextField(2);
    
  class Button_Listener implements ActionListener {
    public void actionPerformed (ActionEvent e) {
      tf.setText(""+ta.getText().length());
    }
  }
    
  public void init() {
    add(ta);
    add(b);
    add(tf);
    b.addActionListener(new Button_Listener());
  }
}

pict2 (8K)

Checkbox

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class ACheckbox extends Applet {
    
    Checkbox cb1 = new Checkbox("1");
    Checkbox cb2 = new Checkbox("2");
    Checkbox cb3 = new Checkbox("3");
    Label label = new Label("gewählt:      ");
    
    class Checkbox_Listener implements ItemListener {
        public void itemStateChanged(ItemEvent e) {
            String s = "";
            if (cb1.getState()) {s += cb1.getLabel()+" ";}
            if (cb2.getState()) {s += cb2.getLabel()+" ";}
            if (cb3.getState()) {s += cb3.getLabel()+" ";}
            label.setText("gewählt: "+s);
        }
    }
    
    public void init() {
        add(cb1);
        add(cb2);
        add(cb3);
        Checkbox_Listener cbl = new Checkbox_Listener();
        cb1.addItemListener(cbl);
        cb2.addItemListener(cbl);
        cb3.addItemListener(cbl);
        add(label);
    }
}

pict03 (8K)

Choice

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AChoice extends Applet {
  Choice c    = new Choice();
  Label label = new Label("gewählt:    ");
    
  class Choice_Listener implements ItemListener {
    public void itemStateChanged(ItemEvent e) {
      label.setText("gewählt: "+e.getItem());
    }
  }
    
  public void init() {
    c.addItem("A");
    c.addItem("B");
    c.addItem("C");
    add(c);
    c.addItemListener(new Choice_Listener());
    add(label);
  }
}

pict04 (9K)

List

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AList extends Applet {
  List l   = new List(4,true);
  char[] a = {'0','0','0','0','0'};
  Label label  = new Label("00000");
    
  class List_Listener implements ItemListener {
    public void itemStateChanged(ItemEvent e) {
      int n = Integer.valueOf(""+e.getItem()).intValue();
      switch(e.getStateChange()) {
        case ItemEvent.SELECTED:   a[n]='X'; break;
        case ItemEvent.DESELECTED: a[n]='0'; break;
      }
      label.setText(""+a[0]+a[1]+a[2]+a[3]+a[4]);
    }
  }
    
  public void init() {
    l.add("A");
    l.add("B");
    l.add("C");
    l.add("D");
    l.add("E");
    add(l);
    l.addItemListener(new List_Listener());
    add(label);
  }
}

pict05 (10K)

Scrollbar

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AScrollbar extends Applet {
  Scrollbar s = new Scrollbar(Scrollbar.HORIZONTAL,50,10,0,110);
  Label label = new Label("50  ");
    
  class Scrollbar_Listener implements AdjustmentListener {
    public void adjustmentValueChanged(AdjustmentEvent e) {
      label.setText(""+e.getValue());
    }
  }
    
  public void init() {
    add(s);
    s.addAdjustmentListener(new Scrollbar_Listener());
    add(label);
  }
}

pict06 (8K)

TextField

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class ATextField extends Applet {
  TextField t1 = new TextField(20);
  TextField t2 = new TextField(20);
  TextField t3 = new TextField(20);
  String s;
    
  class Text_Listener implements TextListener {
    public void textValueChanged(TextEvent e) {
      t2.setText(t1.getText());
    }
  }
    
  class Key_Listener extends KeyAdapter {
    public void keyTyped(KeyEvent e) {
      if (e.getKeyChar()==KeyEvent.VK_ENTER) {
        s = t1.getText();
        t3.setText(s);
      }
    }
  }
    
  public void init() {
    add(t1);
    add(t2);
    add(t3);
    t1.addTextListener(new Text_Listener());
    t1.addKeyListener(new Key_Listener());
  }
}

pict07 (8K)

TextArea

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class ATextArea extends Applet {
  TextArea ta  = new TextArea (
    "",4,10,TextArea.SCROLLBARS_NONE
  );
  TextField tf = new TextField(2);

  class Text_Listener implements TextListener {
    public void textValueChanged (TextEvent e) {
      tf.setText(""+ta.getText().length());
    }
  }
    
  public void init() {
    add(ta);
    add(tf);
    ta.addTextListener(new Text_Listener());
  }
}

pict08 (8K)

KeyEvent

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AKeyEvent extends Applet {
//  MyButton b  = new MyButton("Test");
  TextArea t1 = new TextArea("",8,22,TextArea.SCROLLBARS_NONE);
  TextArea t2 = new TextArea("",8,22,TextArea.SCROLLBARS_NONE);
  int n = 0;

  public void init() {
    add(t1);
    add(t2);
    t1.setText("Hier Text eingeben.");
    t1.addKeyListener(
      new KeyListener() {
        public void keyPressed(KeyEvent e) {
          t1.setText("keyPressed\n"+
            e.paramString().replaceAll(",","\n"));
        }
        public void keyReleased(KeyEvent e) {
          t1.setText("keyReleased\n"+
            e.paramString().replaceAll(",","\n"));
        }
        public void keyTyped(KeyEvent e) {
          t2.setText("keyTyped "+(n++)+"x\n"+
            e.paramString().replaceAll(",","\n"));
        }
      }
    );
  }
}

pict09 (8K)

MouseEvent

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AMouseEvent extends Applet {
  TextArea t1 = new TextArea("",7,22,TextArea.SCROLLBARS_NONE);
  TextArea t2 = new TextArea("",7,22,TextArea.SCROLLBARS_NONE);
  MyButton b  = new MyButton("Hier die Maus bewegen.");
    
  class MyButton extends Button {
    MouseListener ml = new MouseListener() {
      public void mouseClicked(MouseEvent e) {
        t1.setText("mouseClicked\n"+
          e.paramString().replaceAll(",","\n"));
      }
      public void mouseEntered(MouseEvent e) {
        t1.setText("mouseEntered\n"+
          e.paramString().replaceAll(",","\n"));
      }
      public void mouseExited(MouseEvent e) {
        t1.setText("mouseExited\n"+
          e.paramString().replaceAll(",","\n"));
      }
      public void mousePressed(MouseEvent e) {
        t1.setText("mousePressed\n"+
          e.paramString().replaceAll(",","\n"));
      }
      public void mouseReleased(MouseEvent e) {
        t1.setText("mouseReleased\n"+
          e.paramString().replaceAll(",","\n"));
      }
    };
    MouseMotionListener mml = 
      new MouseMotionListener() {
      public void mouseDragged(MouseEvent e) {
        t2.setText("mouseDragged\n"+
          e.paramString().replaceAll(",","\n"));
      }
      public void mouseMoved(MouseEvent e) {
        t2.setText("mouseMoved\n"+
          e.paramString().replaceAll(",","\n"));
      }
    };
    
    public MyButton(String t) {
      super(t);
      this.addMouseListener(ml);
      this.addMouseMotionListener(mml);
    }
  }  
  
  public void init() {
    add(b);
    add(t1);
    add(t2);
  }
}

pict10 (13K)

FocusEvent

import java.awt.*;
import java.awt.event.*;
import java.applet.*;

public class AFocusEvent extends Applet {
  TextArea t1  = new TextArea("Mal hier klicken ...",
                              7,24,TextArea.SCROLLBARS_NONE);
  TextArea t2  = new TextArea("... und mal hier.",
                              3,24,TextArea.SCROLLBARS_NONE);
  FocusListener fl = new FocusListener() {
    public void focusGained(FocusEvent e) {
      t1.setText(e.paramString().replaceAll(",","\n"));      }
    public void focusLost(FocusEvent e) {
      t1.setText(e.paramString().replaceAll(",","\n"));
    }
  };
    
  public void init() {
    add(t1);
    add(t2);
    t1.addFocusListener(fl);
  }
}

pict11 (9K)

ChangeOfPanel

import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

public class AChangeOfPanel extends Applet {
  private Panel panel1 = new Panel(null);
  private Panel panel2 = new Panel(null);
  private TextArea ta  = new TextArea (
                               "",4,10,TextArea.SCROLLBARS_NONE
                             );
  private Button b     = new Button("Zeichen zählen");
  private TextField tf = new TextField(2);
  private Label l      = new Label("Fertig!");

  public void init() {
    Panel cp = new Panel(null);
    cp.setBounds(0, 0, 200, 150);
    add(cp);
    panel1.setBounds(0, 0, 200, 100);
    panel1.setBackground(Color.LIGHT_GRAY);
    panel1.setLayout(new FlowLayout());
    panel1.add(ta);
    cp.add(panel1);
    panel2.setBounds(0, 100, 200, 40);
    panel2.setBackground(Color.BLUE);
    panel2.setLayout(new FlowLayout());
    cp.add(panel2);
    panel2.add(b);
    panel2.add(tf);
    b.addActionListener(new Button_Listener());
  }

  class Button_Listener implements ActionListener {
    public void actionPerformed (ActionEvent e) {
      tf.setText(""+ta.getText().length());
      panel1.remove(ta);
      panel1.add(l);
      panel1.validate();
    }
  }

}


pict12 (8K)
pict13 (8K)

PanelPaint

import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

public class APanelPaint extends Applet {
  private Panel panel = new Panel(new FlowLayout());
  private CanvasGraphic canvas = new CanvasGraphic();
  private int lastX = 0, lastY = 0;
  private Color color = Color.red;
  private Button button;
  private Choice choice;
  
  private MouseListener ml = new MouseListener() {
    public void mouseClicked(MouseEvent e) {
      if ((lastX==0) && (lastY==0)) {
        lastX = e.getX();
        lastY = e.getY();
      }
      canvas.drawLine(e.getX(),e.getY());
    }
    public void mouseEntered(MouseEvent e) {
    }
    public void mouseExited(MouseEvent e) {
    }
    public void mousePressed(MouseEvent e) {
    }
    public void mouseReleased(MouseEvent e) {
    }
  };
  
  private MouseMotionListener mml =
    new MouseMotionListener() {
      public void mouseDragged(MouseEvent e) {
        if ((lastX==0) && (lastY==0)) {
          lastX = e.getX();
          lastY = e.getY();
        }
        canvas.drawLine(e.getX(),e.getY());
      }
      public void mouseMoved(MouseEvent e) {
      }
    };

  class Button_Listener implements ActionListener{
    public void actionPerformed(ActionEvent e) {
      canvas.clearAll();
    }
  }
  
  class ChoiceListener implements ItemListener {
    public void itemStateChanged(ItemEvent e) {
      if (e.getItem().equals("rot")) color=Color.red;
      else if (e.getItem().equals("grün")) color=new Color(0,200,0);
      else if (e.getItem().equals("blau")) color=Color.blue;
    }
  }
  
  class CanvasGraphic extends Canvas {
    public CanvasGraphic() {
      setSize(150,200);
      setBackground(new Color(230,230,230));
    }
    public void paint(Graphics g) {
      g.setColor(color);
      g.drawString("Zeichne mit der Maus", 2, 10);
    }
    public void clearAll() {
      Graphics g = getGraphics();
      g.setColor(getBackground());
      g.fillRect(0, 0, getWidth(), getHeight());
      repaint();
    }
    public void drawLine(int x, int y) {
      Graphics g = getGraphics();
      g.setColor(color);
      g.drawLine(lastX, lastY, x, y);
      lastX = x;
      lastY = y;
    }
  }

  public void init() {
    setLayout(new BorderLayout());
    button = new Button("Lösche");
    button.addActionListener(new Button_Listener());
    panel.add(button);
    choice = new Choice();
    choice.addItem("rot");
    choice.addItem("grün");
    choice.addItem("blau");
    choice.addItemListener(new ChoiceListener());
    panel.add(choice);
    add(BorderLayout.NORTH,panel);
    canvas.addMouseListener(ml);
    canvas.addMouseMotionListener(mml);
    add(BorderLayout.CENTER,canvas);
  }

}

pict14 (10K)