スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Processing Sliderサンプルプログラムその1

今日もProcessingです。マウスイベントのときのスライダーの値の取得の方法でちょっと詰まったので、防備のためにデモプログラムを作ってみました。
あと、ソースコードが見にくかったのでこちらを参考にSyntax Highlighterなるものを導入してみました。


import controlP5.*;

ControlP5 cp5;
Slider s;
int value = 50;

void setup(){
size(400,300);
background(0);
cp5 = new ControlP5(this);
s = cp5.addSlider("SLIDER",0,255,value,50,50,255,20);
}

void draw(){
background(int(s.getValue()));
}

void mousePressed(){
s.updateInternalEvents(this);
println(s.getValue());
}


スライダーを操作すると、背景色がグレースケール255階調で変化します。
また、マウスが押されたときにイベントが発生し、processingのコンソール画面に現在のスライダーの値が出力されます。

ポイントは19行目(ハイライトになってるとこ)です。
一度この行をコメントアウトして実行してみてください。
取得される値がおかしくなります。
正確には、マウスを操作する前の値が取得されます。
これはちょっと使いにくいです。
そこで、19行目の

s.updateInternalEvents(this);

が役に立ちます。

これは、強制的に一度スライダーの値を更新し、正しい値をセットする役割を持っています。
マウス、キーボードイベントの際には、これを使用して正しい値を取得できます。

リファレンス(英語)が読めなくて隣の人に読んでもらいました…英語の必要性を実感しました。
サンプルプログラム、いろいろいじってみるとなんとなくSliderの使い方がつかめるかと思いますので遊んでみてください。

それでは、今日はこの辺りで。
関連記事

コメント

非公開コメント
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。