フォーラム一覧   -   トピック一覧
   Flex Builder 2.0
     バグ投稿のお願い
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 トピック
venzou
投稿日時: 2007-4-21 14:28
ご主人様
登録日: 2007-1-25
居住地: 穴の中
投稿: 101
wmodeの問題
半透明のアプリケーションを作っていて、不具合に遭遇しました。
調べてみると、wmodeには色々問題があるようです。

古くからある問題のようなので、ご存知の方も多いかと思いますが、
私のように、知らない方もいらっしゃると思うので、報告します。


■日本語入力に関する問題
http://www.adobe.com/jp/support/flash/ts/documents/fl0260.html

これっていつ頃の情報なんでしょうか?古そうですが・・・
まだ、解決されてないのでしょうか?


■フレームレートに関する問題

通常は、設定値より遅くなるようです。wmodeの指定で速度が変わるみたいです。
こちらも、ずいぶん昔からある問題のようですね。


■activate、deactivateイベントに関する問題

今回、私が遭遇した不具合です。
'transparent' 又は 'opaque' だとイベントが発生しません。
FlashやFlexと言うよりは、ブラウザ側の問題でしょうか?


テスト用アプリケーション
test.mxml
<?xml version="1.0" ?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    backgroundAlpha="0.2"
    activate="efctGlow.play([lblActivate])"
    deactivate="efctGlow.play([lblDeactivate])"
    frameRate="24"
    enterFrame="count++"
    creationComplete="init()"
>
    <mx:Script>
        <![CDATA[
            import flash.utils.Timer;
            
            [Bindable]
            private var count:int = 0;
            private function init():void {
                var tim:Timer = new Timer(1000);
                tim.addEventListener("timer", timerEvt);
                tim.start();
                count = 0;
            }

            private function timerEvt(e:Event):void {
                txtFrame.text = count.toString() + " Frame " + Timer(e.target).currentCount.toString() + " Sec";
                txtFPS.text = numFmt.format(count/Timer(e.target).currentCount) + " Frame/Sec";
            }
        ]]>
    </mx:Script>

    <mx:Label id="lblActivate"   text="Activate"   />
    <mx:Label id="lblDeactivate" text="Deactivate" />
    <mx:TextArea text="" width="100%" height="100%" />
    <mx:Text id="txtFrame" text=" " />
    <mx:Text id="txtFPS" text=" " />

    <mx:Glow id="efctGlow" duration="800" 
        alphaFrom="1.0" alphaTo="0.6" 
        blurXFrom="20.0" blurXTo="0.0" 
        blurYFrom="20.0" blurYTo="0.0" 
        color="0xFF0000"/>
    
    <mx:NumberFormatter id="numFmt" precision="2" />

</mx:Application>

test.html
<html>
<head>
<title>wmodeのテスト</title>
</head>
<body bgcolor="#FFFFCC">
<table border="1">
<tbody>
<tr>
<td>
wmode指定なし<br>
<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'
    codebase='http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab'
    width='200'
    height='200' >
    <param name='movie' value='test.swf' />
    <param name='quality' value='high' />
    <param name='allowScriptAccess' value='always' />
    <embed pluginspage='http://www.adobe.com/go/getflashplayer'
        src='test.swf'
        width='200'
        height='200'
        play='true'
        loop='false'
        quality='high'
        allowScriptAccess='always'
        type='application/x-shockwave-flash' >
    </embed>
</object>
</td>
<td>
wmode = 'winodw'<br>
<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'
    codebase='http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab'
    width='200'
    height='200' >
    <param name='movie' value='test.swf' />
    <param name='wmode' value='winodw'>
    <param name='quality' value='high' />
    <param name='allowScriptAccess' value='always' />
    <embed pluginspage='http://www.adobe.com/go/getflashplayer'
        src='test.swf'
        width='200'
        height='200'
        wmode='winodw'
        play='true'
        loop='false'
        quality='high'
        allowScriptAccess='always'
        type='application/x-shockwave-flash' >
    </embed>
</object>
</td>
</tr>
<tr>
<td>
wmode = 'transparent'<br>
<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'
    codebase='http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab'
    width='200'
    height='200' >
    <param name='movie' value='test.swf' />
    <param name='wmode' value='transparent'>
    <param name='quality' value='high' />
    <param name='allowScriptAccess' value='always' />
    <embed pluginspage='http://www.adobe.com/go/getflashplayer'
        src='test.swf'
        width='200'
        height='200'
        wmode='transparent'
        play='true'
        loop='false'
        quality='high'
        allowScriptAccess='always'
        type='application/x-shockwave-flash' >
    </embed>
</object>
</td>
<td>
wmode = 'opaque'<br>
<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'
    codebase='http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab'
    width='200'
    height='200' >
    <param name='movie' value='test.swf' />
    <param name='wmode' value='opaque'>
    <param name='quality' value='high' />
    <param name='allowScriptAccess' value='always' />
    <embed pluginspage='http://www.adobe.com/go/getflashplayer'
        src='test.swf'
        width='200'
        height='200'
        wmode='opaque'
        play='true'
        loop='false'
        quality='high'
        allowScriptAccess='always'
        type='application/x-shockwave-flash' >
    </embed>
</object>
</td>
</tr>
</tbody>
</table>
<br>
チェックポイント<br>
<ul>
<li>背景が透けているか? (transparent)</li>
<li>Flashをクリック → Activateが光るか?</li>
<li>外をクリック → Deactivateが光るか?</li>
<li>TextAreaに正常に日本語入力が出来るか?</li>
<li>FrameRateは正常か? (設定値24)</li>
</ul>
</body>
</html>


Windwos XP 環境で IE6、Firefox2、Opera8でのテスト結果。



wmode = 'transparent' | 'opaque' にすると問題が多いですね。
作りたかったものは、deactivateで半透明になるアプリケーションだったのですが、断念しました。

回避策など、何か情報お持ちの方いらっしゃいましたら、よろしくお願いします。
また、Mac環境での実行結果も気になるので、情報頂けたらうれしいです。


追記:テスト用ページ設置しました。
http://www37.tok2.com/home/tmpbufsiz/001/index.html
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
   バグ投稿のお願い satoshi 2006-5-17 10:55
     DataGridのバグ? yas 2006-6-6 20:29
       Re: DataGridのバグ? satoshi 2006-6-6 21:15
     Treeのバグ?2.0.1 Lizua 2007-4-2 12:07
       Re: Treeのバグ?2.0.1 Lizua 2007-4-2 14:24
         Re: Treeのバグ?2.0.1 Lizua 2007-4-18 18:30
           Re: Treeのバグ?2.0.1 Basilico 2007-5-16 10:53
           Re: Treeのバグ?2.0.1 nod 2007-5-28 1:55
             Re: Treeのバグ?2.0.1 Lizua 2007-5-30 13:00
     スクロールバーが表示されたとたんに不可解なエラーがでる wolf 2007-4-5 9:45
     CursorManagerとContextMenuが併用できない wolf 2007-4-17 23:57
       Re: CursorManagerとContextMenuが併用できない venzou 2007-4-18 20:30
         Re: CursorManagerとContextMenuが併用できない wolf 2007-4-19 1:01
   » wmodeの問題 venzou 2007-4-21 14:28
       Re: wmodeの問題 nod 2008-7-13 1:41
     <mx:Zoom>を含む組み合わせエフェクトをend()で止めると・・ genms 2007-4-22 16:40
       Re: <mx:Zoom>を含む組み合わせエフェクトをend()で止めると・・ venzou 2007-4-22 19:37
         Re: <mx:Zoom>を含む組み合わせエフェクトをend()で止めると・・ genms 2007-4-23 11:28
         Re: <mx:Zoom>を含む組み合わせエフェクトをend()で止めると・・ venzou 2007-4-23 12:27
     VideoDisplayのバグ? xware 2008-7-18 9:55
       Re: VideoDisplayのバグ? goki 2008-7-18 11:55
         Re: VideoDisplayのバグ? xware 2008-7-18 12:13

投稿するにはまず登録を