Full browser Flash
Flash får ofta kritik för att "leva i sin egna box" i en html-sida och inte vara en integrerad del i resten av innehållet. Ett sätt att komma runt detta är att göra så att flashapplikationen ändrar storlek när webbläsarfönstrets storlek ändras.
Notera att innehållet i sig själv inte skalas. Jämför t.ex med hur en vanlig applikation beter sig när användaren förändrar dess storlek. Knappar, menyer och liknande kan ändra position och kanske även bli bredare eller högre, men de skalas aldrig.
Men hur åstadkommer man då detta i Flash?
Inställningar
Det är främst två egenskaper som behöver sättas, och detta görs enklast via actionscript. Egenskapen scaleMode på stage objektet ska sättas till NO_SCALE. Sedan kan man även sätta egenskapen align till något av följande: BOTTOM, BOTTOM_LEFT, BOTTOM_RIGHT, LEFT, RIGHT, TOP, TOP_LEFT, TOP_LEFT. Align påverkar var punkten 0,0 hamnar. Oftast är det enklast att räkna på positioner när den är satt till TOP_LEFT, dvs längst uppe till vänster i webbläsarens hörn.
Hur man sätter dessa egenskaper skiljer sig en aning mellan Actionscript 2 och Actionscript 3, men de är snarlika.
Actionscript 2
Stage.scaleMode = "noScale";
Stage.align = "TL";
Actionscript 3
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
Ta hand om storleksförändringar
I en flashapplikatione som inte skalas vid storleksförändring så är man oftast intresserad av att modifiera gränssnittet vid storleksförändringar. T.ex en logga som alltid ska ligga i nedre högra hörnet.
Detta åstadkommer man genom att lyssna på en händelse som kallas onResize.
Actionscript 2
var myListener:Object = new Object();
myListener.onResize = function ()
{
// Modifiera dina clips här
}
Stage.addListener ( myListener );
Actionscript 3
// onResize är den metod som anropas vid storleksförändring
stage.addEventListener ( Event.RESIZE, onResize );
Inställningar i HTML
För att flashapplikationen ska fungera korrekt i en webbläsare måste bredd och höjd i embed/object taggen varasatta till 100%. Detta kan man enkelt göra via publiceringsinställningarna under HTML tabben. Använder man någon annan teknik för att bädda in flashfilmer, t.ex SWFObject, anger man 100% i inställningarna där.
Firefox kapar ofta av flashapplikationer på höjden när de är satta till att inte skalas. Detta löser man enkelt med följande CSS:
*
{
margin:0;
padding:0;
}
html, body
{
margin:0;
padding:0;
height:100%;
}


