FLEX的全屏功能的实现,光写AS还不够,还需要对JS部分做一些小小改动才 行,好在这个改动并不麻烦,有这个需求的朋友可以参考下.另外在FLEX应用里右键菜单的功能也是很常见的,我在这里也作了一个简单的功能实现,太复杂的 小弟暂时还没来得及实践,有朋友实现了也给小弟参考下,在此表示感谢.
好了,先把AS代码贴出来吧:
- <mx:Application xmlns:mx= "http://www.adobe.com/2006/mxml" layout= "vertical" >
- <mx:Style>
- global{
- font-size: 19 ;
- }
- </mx:Style>
- <mx:Script>
- <![CDATA[
- import mx.controls.Alert;
- private function fullScr(): void {
- stage.displayState=StageDisplayState.FULL_SCREEN;
- //controlScr.label="普通";
- //controlScr.addEventListener(MouseEvent.CLICK, normalScr);
- var contextMenu:ContextMenu= new ContextMenu();
- contextMenu.hideBuiltInItems();
- var item:ContextMenuItem= new ContextMenuItem( "关于作者" );
- item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,alertMsg);
- contextMenu.customItems.push(item);
- this .contextMenu=contextMenu;
- }
- private function alertMsg(event:ContextMenuEvent): void {
- Alert.show( "hacker.Ye" );
- }
- private function normalScr(): void {
- //controlScr.removeEventListener(MouseEvent.CLICK,fullScr);
- stage.displayState=StageDisplayState.NORMAL;
- }
- ]]>
- </mx:Script>
- <mx:Button label= "全屏" click= "fullScr();" />
- <mx:Button label= "普通" click= "normalScr()" />
- </mx:Application>
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:Style> global{ font-size:19; } </mx:Style> <mx:Script> <![CDATA[ import mx.controls.Alert; private function fullScr():void{ stage.displayState=StageDisplayState.FULL_SCREEN; //controlScr.label="普通"; //controlScr.addEventListener(MouseEvent.CLICK, normalScr); var contextMenu:ContextMenu=new ContextMenu(); contextMenu.hideBuiltInItems(); var item:ContextMenuItem=new ContextMenuItem("关于作者"); item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,alertMsg); contextMenu.customItems.push(item); this.contextMenu=contextMenu; } private function alertMsg(event:ContextMenuEvent):void{ Alert.show("hacker.Ye"); } private function normalScr():void{ //controlScr.removeEventListener(MouseEvent.CLICK,fullScr); stage.displayState=StageDisplayState.NORMAL; } ]]> </mx:Script> <mx:Button label="全屏" click="fullScr();"/> <mx:Button label="普通" click="normalScr()"/> </mx:Application>
AS部分就没什么好说的了,相信大家的智商都是比我高的.再看看JS部分吧,大家在FLEX工程里找到一个名字index.templete.html的文件打开它,他长成下面这个样子:(只看我写注释的那两行就可以了,免得浪费大家时间)
- <!-- saved from url=(0014)about:internet -->
- < html lang = "en" >
- <!--
- Smart developers always View Source.
- This application was built using Adobe Flex, an open source framework
- for building rich Internet applications that get delivered via the
- Flash Player or to desktops via Adobe AIR.
- Learn more about Flex at http://flex.org
- // -- >
- < head >
- < meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" />
- <!-- BEGIN Browser History required section -->
- < link rel = "stylesheet" type = "text/css" href = "history/history.css" />
- <!-- END Browser History required section -->
- < title > ${title} </ title >
- < script src = "AC_OETags.js" language = "javascript" > </ script >
- <!-- BEGIN Browser History required section -->
- < script src = "history/history.js" language = "javascript" > </ script >
- <!-- END Browser History required section -->
- < style >
- body { margin: 0px; overflow:hidden }
- </ style >
- < script language = "JavaScript" type = "text/javascript" >
- <!--
- // -----------------------------------------------------------------------------
- // Globals
- // Major version of Flash required
- var requiredMajorVersion = ${version_major};
- // Minor version of Flash required
- var requiredMinorVersion = ${version_minor};
- // Minor version of Flash required
- var requiredRevision = ${version_revision};
- // -----------------------------------------------------------------------------
- // -- >
- </ script >
- </ head >
- < body scroll = "no" >
- < script language = "JavaScript" type = "text/javascript" >
- <!--
- // Version check for the Flash Player that has the ability to start Player Product Install (6.0r65)
- var hasProductInstall = DetectFlashVer (6, 0, 65);
- // Version check based upon the values defined in globals
- var hasRequestedVersion = DetectFlashVer (requiredMajorVersion, requiredMinorVersion, requiredRevision);
- if ( hasProductInstall && !hasRequestedVersion ) {
- // DO NOT MODIFY THE FOLLOWING FOUR LINES
- // Location visited after installation is complete if installation is required
- var MMPlayerType = ( isIE == true) ? "ActiveX" : "PlugIn";
- var MMredirectURL = window .location;
- document document.title = document.title.slice(0, 47) + " - Flash Player Installation";
- var MMdoctitle = document .title;
- AC_FL_RunContent(
- "src", "playerProductInstall",
- "FlashVars", " MMredirectURL = "+MMredirectURL+'&MMplayerType='+MMPlayerType+'&MMdoctitle='+MMdoctitle+" ",
- "width", "${width}",
- "height", "${height}",
- "align", "middle",
- "id", "${application}",
- "quality", "high",
- "bgcolor", "${bgcolor}",
- "name", "${application}",
- "allowScriptAccess","sameDomain",
- "type", "application/x-shockwave-flash",
- "pluginspage", "http://www.adobe.com/go/getflashplayer"
- );
- } else if (hasRequestedVersion) {
- // if we've detected an acceptable version
- // embed the Flash Content SWF when all tests are passed
- AC_FL_RunContent(
- "src", "${swf}",
- "width", "${width}",
- "height", "${height}",
- "align", "middle",
- "id", "${application}",
- "quality", "high",
- "bgcolor", "${bgcolor}",
- "name", "${application}",
- "allowScriptAccess","sameDomain",
- "allowFullScreen","true", //加入这一行,看这里,看这里,大家看到了吗?
- "type", "application/x-shockwave-flash",
- "pluginspage", "http://www.adobe.com/go/getflashplayer"
- );
- } else { // flash is too old or we can't detect the plugin
- var alternateContent = 'Alternate HTML content should be placed here. '
- + 'This content requires the Adobe Flash Player. '
- + ' < a href = http ://www.adobe.com/go/getflash /> Get Flash </ a > ';
- document.write(alternateContent); // insert non-flash content
- }
- // -- >
- </ script >
- < noscript >
- < object classid = "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
- id = "${application}" width = "${width}" height = "${height}"
- codebase = "http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab" >
- < param name = "movie" value = "${swf}.swf" />
- < param name = "quality" value = "high" />
- < param name = "bgcolor" value = "${bgcolor}" />
- < param name = "allowScriptAccess" value = "sameDomain" />
- < embed src = "${swf}.swf" quality = "high" bgcolor = "${bgcolor}"
- width = "${width}" height = "${height}" name = "${application}" align = "middle"
- play = "true"
- loop = "false"
- quality = "high"
- allowScriptAccess = "sameDomain"
- allowFullScreen = "true" //加入这一行,看这里,看这里,大家看到了吗?
- type = "application/x-shockwave-flash"
- pluginspage = "http://www.adobe.com/go/getflashplayer" >
- </ embed >
- </ object >
- </ noscript >
- </ body >
-
</
html
>