ProcessingでGUIを簡単に使う

Algorithm for Visual Designより。
controlP5とかその他色々あるけどちょっと試したい時とかAWT使うのもいいと思う。
サンプルではaddActionListenerのところがこんな感じ

a.addActionListener(new ActionListener() {
  public void actionPerformed(ActionEvent e) {
    println("A");
  }
}

だったけどActionScriptぽく書き直してみた。
ボタンが押されたときに呼び出されるメソッドは全てactionPerformedになるのでその中で分岐。
[guiTest.pde]

MyControl control;
void setup() {
  control = new MyControl();
}

void draw() {
}

[MyControl.pde]

import java.awt.Button;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
class MyControl implements ActionListener {
  Button a;
  Button b;
  
  MyControl() {
    a = new Button("A");
    a.addActionListener(this);
    add(a);
    b = new Button("B");
    b.addActionListener(this);
    add(b);
  }
  
  public void actionPerformed(ActionEvent e) {
    if(e.getSource()==a) {
      println("A");
    } else if(e.getSource()==b) {
      println("B");
    }
  }
}