gpt4 book ai didi

flash - 点下或来自 SHAPE 的颜色

转载 作者:行者123 更新时间:2023-12-04 06:31:27 25 4
gpt4 key购买 nike

我正在使用闪存 as3。

我在屏幕上绘制了一些形状。它们是使用以下 Material 制成的:

graphics.beginFill(0x00ff00);
graphics.drawRect(0,0,50,50);
graphics.endFill();

画他们。每个形状都有不同的颜色以供娱乐(不同的开始填充)。

当我在形状周围移动鼠标时,如何获得鼠标指针下形状的颜色?

到目前为止,我看到两个选择,但不知道如何执行其中任何一个:
获取鼠标点下的颜色
从形状属性中获取颜色(首选)

我不知道如何做这些......有什么提示吗?

最佳答案

s1 = 保存第一个形状的影片剪辑的实例名称
s2 = 保存第二个形状的影片剪辑的实例名称
s3 = 包含第三个形状的影片剪辑的实例名称

(必须是不同的影片剪辑)

等等...

所以你需要改变这些值。

如果您需要任何解释,请发表评论,我会帮助您

否则,您可以简单地复制/粘贴此代码:

import flash.events.MouseEvent;import flash.display.Bitmap;import flash.display.BitmapData;

var myColor:String;

s1.addEventListener(MouseEvent.MOUSE_OVER, storeColor1);s2.addEventListener(MouseEvent.MOUSE_OVER, storeColor2);s3.addEventListener(MouseEvent.MOUSE_OVER, storeColor3);

function storeColor1(e:MouseEvent):void{ var BmD:BitmapData = new BitmapData(s1.width, s1.height); var Bm:Bitmap = new Bitmap(BmD); BmD.draw(s1); s1.addChild(Bm); myColor = BmD.getPixel(s1.mouseX,s1.mouseY).toString(16);

while(myColor.length < 6)
{
myColor = "0" + myColor;
}

trace(myColor);}

函数 storeColor2(e:MouseEvent):void
{
var BmD:BitmapData = new BitmapData(s2.width, s2.height);
var Bm:Bitmap = new Bitmap(BmD);
BmD.draw(s2);
s2.addChild(Bm);
myColor = BmD.getPixel(s2.mouseX,s2.mouseY).toString(16);
while(myColor.length < 6)
{
myColor = "0" + myColor;
}

trace(myColor);}

函数 storeColor3(e:MouseEvent):void
{
var BmD:BitmapData = new BitmapData(s3.width, s3.height);
var Bm:Bitmap = new Bitmap(BmD);
BmD.draw(s3);
s3.addChild(Bm);
myColor = BmD.getPixel(s3.mouseX,s3.mouseY).toString(16);
while(myColor.length < 6)
{
myColor = "0" + myColor;
}

trace(myColor);}

顺便说一句,这只是我在 5 分钟内编写的一些代码,让您了解它是如何工作的。这根本不是优化代码。

关于flash - 点下或来自 SHAPE 的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5362844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com