次の例では、BクラスはAクラスを拡張し、変数をintに継承します。ControlP5は、plugToオブジェクトの継承された変数を変更しません。
cp5スライダはBオブジェクトのインスタンスに接続され、assign変数は "a"です。
import controlP5.*;
ControlP5 cp5;
B b;
void setup()
{
size(200,200);
b = new B();
cp5 = new ControlP5(this);
cp5.addSlider("a")
.setPosition(20,20)
.setRange(0,255)
.plugTo(b,"a");
}
void draw()
{
println(b.a , frameCount);
}
class B extends A
{
B()
{
super();
}
}
class A
{
int a;
A()
{
a = 0;
}
}
コンソールに表示される値は常に0であるため、スライダは変数を変更していません。
クラスの継承された変数に対してcontrolP5を動作させるにはどうすればよいですか?