Flex 4 项目经验备忘录 - 1

1、全屏、缩放模式和对齐选项的设置



在主Application中获取stage

要使用[this.]systemManager.stage,而不是[this.]stage,因为在Application的initialize和creationComplete事件处理函数中,Application的stage都为null!


设置全屏

可以在Application的creationComplete事件处理函数中,设置

systemManager.stage.displayState=StageDisplayState.FULL_SCREEN_INTERACTIVE;

设置Application为整体缩放

可以在Application的creationComplete事件处理函数中,设置

systemManager.stage.align="";//默认为"noScale",设置为""(空字符串)会使用水平垂直居中对齐,注:不能设为null

systemManager.stage.scaleMode=StageScaleMode.SHOW_ALL|StageScaleMode.NO_BORDER|StageScaleMode.EXACT_FIT;

Application默认的缩放模式是StageScaleMode.NO_SCALE,对齐方式是StageAlign.TOP_LEFT。也就是说,因为Flex主要是制作Web应用,所以大多数情况下的需求是,根据浏览器的尺寸来手动布局所有页面元素,而不是整体缩放。

设置swf的尺寸

在主Application中添加 元数据标签

<fx:Metadata>
    [SWF (width=800,height=600)]
</fx:Metadata>

或在编译器-附加的编译器参数中 添加 -default-size 800 600  省略则默认设置为500×375

桌面Flex程序设置窗口尺寸+全屏+整体缩放

1、app.xml中设置initialWindow-width | height 节点值,省略设置,则默认为500×375

2、在Application中设置 Metadata 元数据,或在编译器-附加的编译器参数中 添加 -default-size 宽 高,默认为500×375

3、Application的creationComplete事件处理函数中设置

systemManager.stage.displayState、systemManager.stage.stageAlign、systemManager.stage.scaleMode

4、Application的creationComplete事件处理函数中添加

this.width=systemManager.stage.stageWidth;

this.height=systemManager.stage.stageHeight;

注意4必须写在3后面

添加以上代码才能保证Flex桌面程序,在整体缩放并全屏时,Flash内容能正确缩放到页面尺寸。

因为Flex桌面程序在整体缩放模式中全屏时

systemManager.stage.stageWidth和systemManager.stage.stageHeight分别为app.xml中设置的width和height值,Flash内容的初始大小为Application中元数据声明的大小(默认为app.xml设置的宽高尺寸-500×375),而Application的width和height默认是当前Flash的显示尺寸(全屏时为显示器屏幕尺寸),如果没有设置第4步,因为Application全屏时width,height是显示器屏幕尺寸大小(可能大于或小于app.xml中设置的宽高值),而systemManager.stage.stageWidth | stageHeight是app.xml中设置的width和height,就会出现,虽然程序全屏,但Flash内容区域却小于或大于显示器屏幕尺寸,小于屏幕尺寸时,周围区域由Flash背景色填充的现象。

时间: 2024-10-06 19:03:22

Flex 4 项目经验备忘录 - 1的相关文章

Lync 项目经验-12-为某上市企业Skype for Business购买Godday证书

<要想看Lync 2013升级SFB 2015真实项目经验:请看Lync 项目经验-01-到-Lync 项目经验-10> 本系列博文: Lync 项目经验-01-共存迁移-Lync2013-TO-SFB 2015-规划01http://dynamic.blog.51cto.com/711418/1858520 Lync 项目经验-02-共存迁移-Lync2013-TO-SFB 2015-规划02http://dynamic.blog.51cto.com/711418/1859143 Lync

佩特来项目经验小集合(2)___组合查询存储过程,报错 &amp;quot;varchar JBID=&amp;#39;&amp;#39; 转换成数据类型 int 时失败&amp;quot;

今天写一个组合查询的存储过程遇到这样一个问题:在将 varchar 值 'SELECT * FROM View_DLS_WXJD_Customer WHERE 1=1 and JBID ='' 转换成数据类型 int 时失败.错误详情如图所看到的: 经百度:字符串变量和整型变量连接不能用+连接. 于是我採用cast()函数将DLSJB这个整型变量转换成字符串,这样问题就攻克了. 正确代码例如以下所看到的: ALTER PROCEDURE [dbo].[Proc_SH_WXJDList] @DH

java程序员面试----交流项目经验(摘自百度)

1:请你介绍一下你自己这是面试官常问的问题. 2:说说你的家庭面试时询问家庭问题不是非要知道求职者家庭情况,探究隐私,而是要了解家庭背景对求职者的塑造和影响.面试官希望听到的重点也在于家庭对求职者的积极影响. 3:说说你的最大优缺点这个问题的概率很大,面试官喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分. 4:就你申请的这个职位,你认为你还缺什么?面试官喜欢问求职者的弱点,但精明的求职者一般不直接回答.他们希望看到这样的求职者:继续重复自己的优势,然后说:

佩特来项目经验小集合(2)___组合查询存储过程,报错 &quot;varchar JBID=&#39;&#39; 转换成数据类型 int 时失败&quot;

今天写一个组合查询的存储过程遇到这样一个问题:在将 varchar 值 'SELECT * FROM View_DLS_WXJD_Customer WHERE 1=1 and JBID ='' 转换成数据类型 int 时失败.错误详情如图所示: 经百度:字符串变量和整型变量连接不能用+连接.于是我采用cast()函数将DLSJB这个整型变量转换成字符串,这样问题就解决了.正确代码如下所示: ALTER PROCEDURE [dbo].[Proc_SH_WXJDList] @DH varchar(

Lync 项目经验-08-Polycom CX700-4.0.X-能登录SFB 2015-能更新为中文

本系列博文: Lync 项目经验-01-共存迁移-Lync2013-TO-SFB 2015-规划01http://dynamic.blog.51cto.com/711418/1858520 Lync 项目经验-02-共存迁移-Lync2013-TO-SFB 2015-规划02http://dynamic.blog.51cto.com/711418/1859143 Lync 项目经验-03-共存迁移-Lync2013-TO-SFB 2015-完成 http://dynamic.blog.51cto

使用 Flex 库项目---打包swc

来源:http://help.adobe.com/zh_CN/flashbuilder/using/WSe4e4b720da9dedb5-1a92eab212e75b9d8b2-7ffe.html 为应用程序配置库 创建 Flex 库项目 创建 AIR 库项目 将组件添加到库项目中 选择要包括在 SWC 文件中的库项目元素 构建库项目 在项目中使用 SWC 文件 将 SWC 文件添加到库路径 编译时将 SWC 文件合并到应用程序 SWF 文件中 将 SWC 文件设置为外部库文件 将 SWC 文件

佩特来项目经验小集合(5)___系统流程设计

在佩特来项目设计中有一个流程设计问题,虽然.NET 和Java都有工作流,但是考虑到这个项目小,这里就简单的借用一点工作流的思想,设计了几张表,然后通过代码来控制流程.下面以"维修鉴定单业务流程"中的有实物流程为例,谈一下具体的流程设计.有实物的维修鉴定业务流程包含大致步骤:代理商填单.打印二维码.拆包.沟通转办.拆分.故障分析.各角色对费用进行审批.费用提交到费用池(统计各代理商金钱的地方).维修鉴定单流程见下图: 因为系统中不止这一个业务流程,所以系统流程设计的表有任务表(如维修鉴

《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中

  先看一下我要实现的功能界面:   这个界面的功能在图中已有展现,课程分配(教师教授哪门课程)在之前的页面中已做好.这个页面主要实现的是授课,即给老师教授的课程分配学生.此页面实现功能的步骤已在页面中有所体现,这里不再赘述,此篇文章主要介绍:我是如何通过js从前台获取数据,然后通过ajax技术向后台一般处理程序传递JSON,后台又是如何获取传来的JSON,并对JSON数据转换,然后将转换后的数据写入数据库的! 介绍这些步骤实现前,先说说自己的辛酸:絮叨辛酸,是因为为了实现这个功能,我真的用了很

Java项目经验——程序员成长的钥匙

Java就是用来做项目的!Java的主要应用领域就是企业级的项目开发!要想从事企业级的项目开发,你必须掌握如下要点:1.掌握项目开发的基本步骤2.具备极强的面向对象的分析与设计技巧3.掌握用例驱动.以架构为核心的主流开发方法 没有人愿意自己一辈子就满足于掌握了一些代码实现的技巧,别人告诉你要实现什么,你就用代码堆砌来实现别人的要求!你必须学会从整个项目的角度去思考!你必须学会假如你是项目经理,你该如何思考!你必须学会假如你是架构师,你该如何思考!你必须掌握针对某个特定问题领域的分析方法! 关于基