プロが教えるわが家の防犯対策術!

マウスがその画像の上に乗るとずずずっと画像がある倍率まで大きくなり、
その画像の上を離れたとたんにずずっと元のサイズに戻る記述はいかようにするのでしょうか。

フレームアクションにて
img_flag = false;

my_img.onRollOver = function(){
 if(!img_flag){
  my_img._xscale = my_img._yscale = 130;
 }else{
  my_img._xscale = my_img._yscale = 100;
 }
 img_flag = !img_flag;
};

上記だと画像の左上から右下に向かってズームしてしまいますし、
何よりずずずっという動きがありません。

お時間のあるかたなにとぞお願いします。

A 回答 (2件)

こんにちは



>そのボタン自体のロールオーバー機能が無効に

ロールオーバー時の画像の入れ替えですが、スプライト自体のタイムラインで簡単に出来ます。

1、スプライトに通常時の画像を登録します、するとその画像がタイムラインの1フレーム目にキーフレームが入ります。

2、ロールオーバー時の画像をタイムラインに登録、この時、2フレーム目にキーフレームがくるように入れます。

3、一番上にフレームアクションを挿入し、1、2フレームにキーフレームをいれ、簡易アクションで構わないので、1、2の両フレームで、this,停止,を選択します。

4、メインのタイムラインに戻り、スプライトを選択し、スクリプトを編集、そこに直接スクリプトを書きます。



//ballにマウスが乗った時
on(rollOver){
//スプライトのタイムライン、2フレーム目に移動
gotoAndPlay(2);
}
//ballからマウスが退いた時
on(rollOut){
//スプライトのタイムライン、1フレーム目に移動
gotoAndPlay(1);
}

こんな感じでロールオーバー時に画像を変える事ができます。わかりにくいかも知れませんが、一応ですが、スプライト編集時の画像を添付します。
「suzuka rollOverで画像が徐」の回答画像2
    • good
    • 0
この回答へのお礼

できました!!!
でもスプライトはなかなか難しいですね・・・
http://mikawa.sakuraweb.com/abc/img/flaaaa.html

お礼日時:2010/02/04 19:30

こんにちは


Suzakaでのボタン画像の拡大・縮小は昔、自身でもやったので一応そのときのものを書きます。

尚、
>上記だと画像の左上から右下に向かってズームしてしまいます。
はスプライトの基準点が真ん中になっていない為かと思われますので、スプライトのプロパティを開き基準点を画像の半分の値にされるといいと思います。

サンプル
ボタンのスプライト名"ball" 縦幅50px・横幅50pxの場合

//初期設定、ここで大きくなる速度の設定をします。
var b=5;
//スプライト"ball"に適用される動作(onRollOverされた時)=over
function over(){
//動作定義
this.onEnterFrame=function(){
//x軸(横幅)の大きさ。フレーム毎に10増加
this._xscale+=b;
//大きさが200を超えると
if(this._xscale>200){
//停止
this._xscale=200;
}
//y軸(縦幅)の大きさ。フレーム毎に10増加
this._yscale+=b;
//大きさが200を超えると
if(this._yscale>200){
//停止
this._yscale=200;
}
};
};
//スプライト"ball"に適用される動作(onRollOutされた時)=out
function out(){
//動作定義
this.onEnterFrame=function(){
//x軸(横幅)の大きさ。フレーム毎に10減少
this._xscale-=b;
//大きさが100以下になると
if(this._xscale<100){
//停止
this._xscale=100;
}
//x軸(横幅)の大きさ。フレーム毎に10減少
this._yscale-=b;
//大きさが100以下になると
if(this._yscale<100){
//停止
this._yscale=100;
}
};
};
//スプライト"ball"にマウスが重なると、動作overを適用
//以下同文
_root.ball.onRollOver=over;
//スプライト"ball"からマウスが出ると、動作outを適用
//以下同文
_root.ball.onRollOut=out;


以上
このやり方だと最後の部分(_root.ball.onRollOver=over;)でスプライトを増やし、同じ動きをさせる事ができます。

_root.スプライト名1.onRollOver=over;
_root.スプライト名2.onRollOver=over;
_root.スプライト名3.onRollOver=over;

こんな感じで出来ます。

参考になればと思います。

この回答への補足

ありがとうございました、助かりました!
マウスのロールオーバーとロールアウトのズームはできました。

ところで、ロールオーバー時に画像が変わるボタンを作っておいて
(通常は直立した人間の画像、マウスを乗せると吹き出しが右上に出る)
それを教えていただいた記述でズームに組み込みましたが

そのボタン自体のロールオーバー機能が無効になってしまいました。
これはどうにもできないのでしょうか。
たびたび申し訳ありません。

補足日時:2010/02/03 10:59
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!