package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import gainer.*;
//アナログ出力
public class AOutEx extends Sprite {
private var gio:Gainer;
private var label:Array;
private var value:Array;
//コンストラクタ
public function AOutEx() {
//Gainerの生成
gio=new Gainer("localhost",2000,Gainer.MODE1,true);
gio.onReady=onReady;
}
//初期化
private function onReady():void {
var i:int;
var tf:TextField;
//ラベルの生成
label=new Array();
value=new Array();
for (i=0;i<4;i++) {
tf=new TextField();
tf.autoSize=TextFieldAutoSize.LEFT;
tf.background=true;
tf.backgroundColor=0xDDDDDD;
tf.x=10;
tf.y=10+30*i;
addChild(tf);
label.push(tf);
value.push(0);
label[i].addEventListener(
MouseEvent.MOUSE_DOWN,onMouseDown);
}
aOut(null);
}
//マウスダウンイベントの処理
private function onMouseDown(evt:MouseEvent):void {
aOut(evt.target);
}
//アナログ出力
private function aOut(target:Object):void {
var i:int=0;
//値更新
for (i=0;i<4;i++) {
if (label[i]==target) {
value[i]+=5;
if (value[i]>255) value[i]=0;
}
label[i].text="aout"+i+" "+value[i];
}
//アナログ出力
gio.analogOutput(value);
}
}
}
|