;--------------------------------------------------------------------- *layer_test1|レイヤーを表示する [macro name="ll"][l][r][endmacro] [macro name="nowait2"][nowait][font color=0x77ff77][endmacro] [macro name="endnowait2"][resetfont][endnowait][endmacro] [cm] ここでは、レイヤーを表示する手順について説明します。[ll] [r] @iscript var myLayer = new Layer(kag, kag.fore.base); @endscript [nowait2] var myLayer = new Layer(kag, kag.fore.base);[r] [endnowait2] [r]  レイヤー管理オブジェクトを、新規作成しました。引数のkagはメインウインドウ、kag.fore.baseは親となる表のベースレイヤーです。[r]  続いて、可視にします。デフォルトが不可視になっていますので、必ずこの処理は必要になります。[ll] [r] @iscript myLayer.visible = true; @endscript @nowait2 myLayer.visible = true;[r] @endnowait2 [r]  この時点で可視にはなりましたが、レイヤー自体が透明なので何も見えません。見えるように塗りつぶしてみます。[r] (通常は、設定や描画などを行なってから可視に切り換えます)[p] [cm] @iscript myLayer.face = dfBoth; myLayer.fillRect(0, 0, 640, 480, 0xff444400); @endscript @nowait2 myLayer.face = dfBoth;[r] myLayer.fillRect(0, 0, 640, 480, 0xff444400);[r] @endnowait2 [r]  サイズや位置を決めずに、fillRectで黄色に塗りつぶしてみました。[r]  右上にちいさな四角が出ています。初期位置やサイズは(0,0)-(32,32)になるようです。[r]  次は、位置を決めてみましょう。[ll] [r] @iscript myLayer.setPos(100,100); @endscript @nowait2 myLayer.setPos(100,100);[r] @endnowait2 [r]  位置を変えてみました。メッセージレイヤーより前に出てきてしまっていますね。[r]  この後の説明が見えないので、レイヤーの重ね合わせ順を変更するメソッドも入れておきます。[ll] [r] @iscript myLayer.bringToBack(); @endscript @nowait2 myLayer.bringToBack();[r] @endnowait2 [r]  見えやすいようにメッセージレイヤーのフレーム色を透明にしておきましょう。[p] [position opacity=0]  次は、サイズです。[ll] [r] @iscript myLayer.setSize(440,280); myLayer.face = dfBoth; myLayer.fillRect(0, 0, 440, 280, 0xff444400); @endscript @nowait2 myLayer.setSize(440,280);[r] myLayer.face = dfBoth;[r] myLayer.fillRect(0, 0, 440, 280, 0xff444400);[r] @endnowait2 [r]  レイヤーが大きくなりました。[r]  ここで、黄色の部分をクリックして、反応しないことを試してみてください。右クリックも反応しません。[r]  これは、レイヤーがマウスイベントを乗っ取ってしまって、ベースレイヤーにマウスクリックが伝わっていないからです。[r]  黄色の部分以外をクリックするか、キーボードを使って先に進んでください。[p] [cm]  マウスのヒットタイプを変更して、マウスイベントを透過するようにしてみます。[ll] [r] @iscript myLayer.hitType = htMask; myLayer.hitThreshold = 256; @endscript @nowait2 myLayer.hitType = htMask;[r] myLayer.hitThreshold = 256;[r] @endnowait2 [r]  これで黄色の部分も反応するようになりました。[r]  テ・[l]ス・[l]ト[l]です。[r]  次に、イメージサイズだけを小さくしてみます。[ll] [r] @iscript myLayer.setImageSize(300,220); @endscript @nowait2 myLayer.setImageSize(300,220);[r] @endnowait2 [r] 小さくなりました。とりあえず、テストはここまでです。[s]