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

メニューボタンでマウスを置くと色がだんだん薄くなるものを作りたいと思っています。
シンボルのボタンを作る要領で作っていたのですが、なかなか上手くいきません。
どのように作るとよいでしょうか?
宜しくお願いします。

A 回答 (5件)

さまざまなやり方がありますが、タイムラインを使わない方法は以下の方法でできます。

(タイムラインを使う方法は説明が長くなるので....)
まず、メニューボタンとなるボタンをシンボルのボタンで作成します。仮にこれを「BtnA」とします。さらに「BtnA」をシンボルのムービークリップでシンボル化します。仮にこれを「MovA」とします。つまり「MovA」のムービークリップの中に「BtnA」のボタンがある様になります。そして、「MovA」のムービークリップを選択し、アクションスクリプトを記述します。(MovAがあるタイムラインではなく、MovAのムービークリップに直接記述します。)
▼以下を記述
onClipEvent(load){
var btnAction=false;
}
on(rollover){
btnAction=true;
}
on(rollout){
btnAction=false;
}
onClipEvent(enterFrame){
if(btnAction==true){
if(this._alpha>50){
this._alpha-=5;
}
}else{
if(this._alpha<100){
this._alpha+=5;
}
}
}
▲この上まで
説明すると、まず「movA」が読み込まれた時に変数(例:btnAction)を設定。とりあえず変数値を「false」に設定しておく。そして、マウスが乗ると変数値が「true」になり、離れると「false」に戻ります。これで変数の切り替えが可能になります。そして、「onClipEvent(enterFrame)」は常にアクションスクリプトが繰り返し実行される(「onClipEvent(load)」はこのmovAがロードされた時、1回のみ実行)ので、もし「true」だったら透明度50まで5ずつ薄くなり(true値で透明度50以下になるとスクリプトは無視されます)、「false」だったら透明度100まで5ずつ濃くなる(false値で透明度100以上になったらスクリプトは無視されます)という感じです。ちなみに、load時にfalseとした理由は、全体のSWFの中で再度、このmovAが読み込まれた時、_alpha値が100以下だったら100まで5ずつ上げるためです。
後は応用ですので色々試してみてください。ちなみに「onClipEvent(enterFrame)」の中のもし、falseだったらを_alpha+=5;ではなく、_alpha=100;とした場合、マウスが放れると透明度100(つまり即座に不透明)になります。
    • good
    • 0

mouseoverの間に


_alphaを徐々に100→20
となるようにすれば
そのボタンは
だんだん薄くなりますけど・・・
    • good
    • 0

参考になりそうなページを紹介しますね。


手順はテキストだけだとうまく伝える事ができないので。。。

参考URL:http://www2.netwave.or.jp/~light/
    • good
    • 0

私もフラッシュをお勧めします。


GIFアニメでもできなくは無いでしょうが、複数作るなら、フラッシュの方が簡単です。

ただ、フラッシュはフラッシュプレイヤーがDLされていないと見れないので、メニューに使うなら、別にGIFアニメか、簡易版(マウスオーバーで色を変える程度)を作っておく必要があります。
    • good
    • 0

FLASHで作成すればすぐに再現できると思いますが、、、GIFアニメーションや置き換えのスクリプトではきついかな?と思います。

この回答への補足

ごめんなさい、説明不足でした。
作成はフラッシュで行っています。どのように作るとできますか?

補足日時:2004/07/24 12:43
    • good
    • 0

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