Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache flex 设置舞台以允许任何舞台宽度或高度_Apache Flex_Actionscript 3_Flash Builder_Mxml - Fatal编程技术网

Apache flex 设置舞台以允许任何舞台宽度或高度

Apache flex 设置舞台以允许任何舞台宽度或高度,apache-flex,actionscript-3,flash-builder,mxml,Apache Flex,Actionscript 3,Flash Builder,Mxml,我正在为一家网络公司开发一个web应用程序,它是一个“引擎”,可以加载外部swf文件,并以幻灯片的方式呈现它们,就像现在很多网站前端标题内容区域所呈现的一样 事情几乎准备好了,但我遇到了一个设计上的障碍。虽然我一直在愉快地开发930x270的舞台宽度和高度,但事实是并不是每个网站都会使用这些尺寸。出于这个确切的原因,运行的所有内容都使用stage.stageWidth属性(与stage.stageHeight相同),但是我似乎无法动态设置宽度和高度值,即使在网页上使用从基本到高级的嵌入技术 使用

我正在为一家网络公司开发一个web应用程序,它是一个“引擎”,可以加载外部swf文件,并以幻灯片的方式呈现它们,就像现在很多网站前端标题内容区域所呈现的一样

事情几乎准备好了,但我遇到了一个设计上的障碍。虽然我一直在愉快地开发930x270的舞台宽度和高度,但事实是并不是每个网站都会使用这些尺寸。出于这个确切的原因,运行的所有内容都使用stage.stageWidth属性(与stage.stageHeight相同),但是我似乎无法动态设置宽度和高度值,即使在网页上使用从基本到高级的嵌入技术

使用Flex/FlashBuilder元信息

[SWF(frameRate=30, widthPercent=100, heightPercent=100)]
或者即使我设置了特定的宽度和高度。 例如,如果我不设置任何内容(仅设置帧率),并且将生成的swf嵌入到980x300的元素中,stage.stageWidth仍然只返回500,完全搞乱了元素的显示方式

我也尝试过设置scaleMode,现在它设置为

stage.scaleMode = StageScaleMode.EXACT_FIT;
这是我的构造函数中设置的第一件事。仍然是500(没有任何元信息集,甚至有widthPercent和heightPercent)

我需要的能力,嵌入式闪存几乎是任何大小,无需重新编译的要求,也不需要担心长宽比,加载的内容将手动创建该特定项目,但整个项目依赖于引擎阶段的宽度属性

对不起,我的文字太长了,但我的想法已经没有了


MXML或某些属性中是否有我可以修改的内容,或某些嵌入策略中缺少的内容,以便将stages属性设置为其嵌入对象的宽度和高度?

尝试设置以下内容:

stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;

也可以使用主构造函数之外的方法来获取stageHeight和stagewight,有时stage还没有“准备就绪”。

我很难理解。“运行的所有内容都使用stage.stageWidth属性,原因正是如此”在这种情况下,“所有内容”是什么?使用它的原因是什么?您如何尝试动态设置stageWidth/stageHeight?在Flex中,你通常不会直接触摸舞台。这是一个“加载引擎”项目,它的设计目的只有一件事:将swf文件加载到舞台中(从XML文件中引用),播放每一个(一个接一个),当激活的swf文件播放完后,它会将每个swf向左移动整个舞台宽度的数量(因此,它们可以在屏幕外重置回第1帧,并且新的活动swf可以开始播放)。当stage.stageWidth仅报告500时,则意味着每个swf仅偏移500,并且它们仅以500的增量向左或向右移动。因此,当在嵌入标记或SWFOObject元素中,宽度和高度设置为930x270,并且引擎仍然仅报告500px的宽度(在这种情况下)开始重叠,你看,我认为设置stage.scaleMode=StageScaleMode.NO_SCALE在这样的情况下会更好(精确的匹配会拉伸swf)。啊,太完美了!工作起来很有魅力!谢谢!:D现在只需要调整一些数学:D(我知道会有办法,只是打得不对)