1
import fl.controls.ColorPicker;
import fl.events.ColorPickerEvent;

var myColorPicker:ColorPicker = new ColorPicker();
myColorPicker.addEventListener(ColorPickerEvent.CHANGE, changeHandler);
myColorPicker.move(10, 10);
addChild(myColorPicker);

function changeHandler(event:ColorPickerEvent) {
    trace("color changed:", event.color, "(#" + event.target.hexValue + ")");
 trace(myColorPicker.hexValue);
}

event.target.hexValue関数の外側の値が必要です。Flash CS5 でアクションを使用しています。

4

2 に答える 2

2
var borderColor:uint = 0x000000;

var myColorPicker:ColorPicker = new ColorPicker();
myColorPicker.editable = true;
myColorPicker.move(10, 10);
addChild(myColorPicker);

myColorPicker.addEventListener(ColorPickerEvent.CHANGE, changeHandler);

function changeHandler (event:ColorPickerEvent):void {
    var newuint = uint("0x"+event.target.hexValue);
    borderColor = newuint;
    graphics.lineStyle(2,borderColor,1);
}
于 2010-09-27T13:39:02.763 に答える
1

更新: 選択した色の値を uint として探している場合は、ColorPicker のselectedColorプロパティevent.target.selectedColorまたはColorPickerEvent のcolorプロパティを直接使用できます。event.color


同じ変更ハンドラを使用する複数のカラー ピッカーがない限りevent.target、(event.currentTarget正確には)の値はmyColorPicker、関数の外部から問題なくアクセスできる値と同じです。myColorPicker.hexValueしたがって、関数の外で使用できます。これにアクセスしたいコードが にアクセスできない場合は、 の値をその関数にパラメーターとして myColorPicker渡すことができます。myColorPicker.hexValue

これがあなたが望んでいたものではない場合は、質問を明確にしてください.

于 2010-09-23T08:40:37.867 に答える