私は Actionscript と Flash には比較的慣れていませんが、Microsoft 環境で多くの経験を積んでいるため、私がやろうとしていることは .NET でも機能しますが、Flash では何かが根本的に異なり、理解できません。私は怖いです。
私が抱えている問題は、ステージにライブラリ オブジェクト (この場合は単純な四角形) を追加し、ActionScript 3 を使用して動的に作成することです。
オブジェクトをステージにドラッグすると、高さ 33px、幅 152px で期待どおりに表示されます
インスタンス化する場合は、次のように ActionScript を使用します。
var rect1:myObject = new myObject() ;
rect1.x = 0 ;
rect1.y = 0 ;
addChild ( rect1 );
期待通りに表示されます
すぐ下に別のものを配置したいので、次のように書きます。
var rect2:myObject = new myObject() ;
rect2.x = 0 ;
rect2.y = rect1.height ;
addChild ( rect2 );
私はそれが最初のオブジェクトと整列し、その下端に触れることを期待していますが、最初のオブジェクトのはるか下に表示されます (デバッグ レポート rect1.height は実際には 106.5 に設定されています!)。
rect2.y = 33 をハードコーディングすると、期待どおりに表示され、最初のオブジェクトに触れます
ここで一体何が起こっているのでしょう。ステージの scaleY を見てきましたが、1 に設定されているだけです。stage.height (273.9) と stage.stageHeight (768) も見て、スケーリングに相関関係があるかどうかを確認しましたが、そうではありません。動作しません。
どんな助けでも大歓迎です。明らかに何かが欠けているように感じますが、ググって死にましたが、何の喜びもありませんでした。
よろしくニール