菜鸟急求flash as3.0代码问题!
本菜鸟目前急需用adobeflashcc做一个banber。之前身边有人做过这个东西,领导让我照着来一个。这个banber要做成14x6个方格子,每个格子都是一张照片(照...
本菜鸟目前急需用adobe flash cc 做一个banber。
之前身边有人做过这个东西,领导让我照着来一个。这个banber要做成14x6个方格子,每个格子都是一张照片(照片已准备好65x65),然后鼠标经过的方格子会放大到80x80(图也准备好了),鼠标移走,恢复65x65。
在鼠标经过的时候,有个放大和缩小的过渡,不要太死板。
除此之外,中间偏左想用镂空,不放方格子的形式呈现字母,一共有4个字母,但是同一时间只显示一个字母,当网页刷新时,随即或者按照顺序变更字母。
求全球各地的大神们教教我。如果能qq教更好,如果还能留个as3的教学网站更更好,如果能帮我解决麻烦同时让我学会as3那边是极好的啦~
留个qq号吧。如果有大神愿意教,可以加q~248134531~
另外如果解决问题,100悬赏送上哈~
补充一下,adobe flash cc里有个代码片段,里边看到个“事件处理函数”,里边有mouse over和mouse out。内容如下。
那么我在下边的3个//都该写些什么呢?求教啊!急求啊!大神万岁!
/* Mouse Over 事件
鼠标悬停到此元件实例上会执行您可在其中添加自己的自定义代码的函数。
说明:
1. 在以下"// 开始您的自定义代码"行后的新行上添加您的自定义代码。
该代码将在鼠标悬停到符号实例上时执行。
*/
movieClip_3.addEventListener(MouseEvent.MOUSE_OVER, fl_MouseOverHandler_3);
function fl_MouseOverHandler_3(event:MouseEvent):void
{
// 开始您的自定义代码
// 此示例代码在"输出"面板中显示"鼠标悬停"。
trace("鼠标悬停");
// 结束您的自定义代码
} 展开
之前身边有人做过这个东西,领导让我照着来一个。这个banber要做成14x6个方格子,每个格子都是一张照片(照片已准备好65x65),然后鼠标经过的方格子会放大到80x80(图也准备好了),鼠标移走,恢复65x65。
在鼠标经过的时候,有个放大和缩小的过渡,不要太死板。
除此之外,中间偏左想用镂空,不放方格子的形式呈现字母,一共有4个字母,但是同一时间只显示一个字母,当网页刷新时,随即或者按照顺序变更字母。
求全球各地的大神们教教我。如果能qq教更好,如果还能留个as3的教学网站更更好,如果能帮我解决麻烦同时让我学会as3那边是极好的啦~
留个qq号吧。如果有大神愿意教,可以加q~248134531~
另外如果解决问题,100悬赏送上哈~
补充一下,adobe flash cc里有个代码片段,里边看到个“事件处理函数”,里边有mouse over和mouse out。内容如下。
那么我在下边的3个//都该写些什么呢?求教啊!急求啊!大神万岁!
/* Mouse Over 事件
鼠标悬停到此元件实例上会执行您可在其中添加自己的自定义代码的函数。
说明:
1. 在以下"// 开始您的自定义代码"行后的新行上添加您的自定义代码。
该代码将在鼠标悬停到符号实例上时执行。
*/
movieClip_3.addEventListener(MouseEvent.MOUSE_OVER, fl_MouseOverHandler_3);
function fl_MouseOverHandler_3(event:MouseEvent):void
{
// 开始您的自定义代码
// 此示例代码在"输出"面板中显示"鼠标悬停"。
trace("鼠标悬停");
// 结束您的自定义代码
} 展开
1个回答
展开全部
/// 你说的什么中间偏左放字母,没看懂什么意思。以下代码实现的你想要的逻辑
package{
import flash.display.Shape;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
public class Main extends Sprite {
/// 行数量
private static const ROW_AMMOUNT:int = 6;
/// 列数量
private static const COLUMN_AMMOUNT:int = 14;
/// 图片大小
private static const IMAGE_SIZE:int = 65;
/// 缩放大小
private static const IMAGE_SCALE_SIZE:int = 80;
/// 绘制方块用(换成你的图片)
private var _vTempShape:Shape;
/// 装载单个图片的容器
private var _vImageContainer:Sprite;
private var _vContainer:Sprite;
/// 当前选中的图片
private var _vCurrentChoosed:Sprite;
private var _iImageWidth:int;
private var _iImageH:int;
public function Main():void {
/// 初始化容器
_vContainer = new Sprite();
_vContainer.x = _vContainer.y = 50;
this.addChild( _vContainer );
/// 开始绘制方块(改成图片)
for ( var i:int = 0; i < ROW_AMMOUNT; i++ ) {
for ( var j:int = 0; j < COLUMN_AMMOUNT; j++) {
/// 初始化图片容器
_vImageContainer = new Sprite();
/// 绘制格子(换成你的图片)
_vTempShape = new Shape();
_vTempShape.graphics.beginFill(0xFFFFF * Math.random() * 100, 1);
_vTempShape.graphics.drawRect(0, 0, IMAGE_SIZE, IMAGE_SIZE);
_vTempShape.graphics.endFill();
/// 格子锚点居中,用户缩放以中心点
_vTempShape.x = -_vTempShape.width / 2;
_vTempShape.y = -_vTempShape.height / 2;
_vImageContainer.addChild(_vTempShape);
/// 设置图片坐标
_vImageContainer.x = j * _vTempShape.width;
_vImageContainer.y = i * IMAGE_SIZE;
/// 增加监听
_vImageContainer.addEventListener(MouseEvent.MOUSE_OVER, mouseOperationHander);
_vContainer.addChild( _vImageContainer );
}
}
}
/// 鼠标划过事件监听
private function mouseOperationHander(e:MouseEvent):void {
var tempSprite:Sprite = e.currentTarget as Sprite;
/// 前后两次选中的不是一个图片才做处理
if ( _vCurrentChoosed != tempSprite ) {
if ( _vCurrentChoosed ) {
/// 把上一次选中的,恢复成原大小
_vCurrentChoosed.width = _vCurrentChoosed.height = IMAGE_SIZE;
}
_vCurrentChoosed = e.currentTarget as Sprite;
/// 将鼠标选中的图片大小改为80
_vCurrentChoosed.width = _vCurrentChoosed.height = IMAGE_SCALE_SIZE;
/// 将鼠标选中的图片层级调到坐上层
_vContainer.setChildIndex(_vCurrentChoosed,_vContainer.numChildren - 1);
}
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询